Commit Graph

387 Commits

Author SHA1 Message Date
Lirusaito
b60ee67b0c Make GCC 4.8 a little happier by removing a copy pasted pointless line 2013-04-23 22:14:56 -04:00
Latif Khalifa
a5bb6114b7 Merge remote-tracking branch 'siana/master' 2013-04-23 12:19:09 +02:00
Latif Khalifa
5396d17f2a Merge remote-tracking branch 'aleric/master'
Conflicts:
	indra/newview/lltexturefetch.cpp
	indra/newview/llviewerwindow.cpp
2013-04-23 12:13:54 +02:00
Siana Gearz
d6d5d5ae1b Bring back memory stat! Someone is a clobbermonster. 2013-04-23 11:46:44 +02:00
Siana Gearz
e484904e3b Version 1.8.0 2013-04-20 14:44:01 +02:00
Latif Khalifa
70eb45e923 Revert "TEMPORARILY disable erroring out during mesh upload"
This reverts commit 3bdeb8e8a8.
2013-04-20 04:53:44 +02:00
Latif Khalifa
f6f505d487 Merge remote-tracking branch 'shyotl/master' 2013-04-20 04:29:59 +02:00
Shyotl
91db5a854f Wrap std::filebuf to work with unicode filepaths on Windows. (Use UTF-16) 2013-04-19 21:27:47 -05:00
Latif Khalifa
3bdeb8e8a8 TEMPORARILY disable erroring out during mesh upload 2013-04-20 00:28:36 +02:00
Aleric Inglewood
734d2e658d Rename HTTPTimeout::sClockCount (in clock ticks) to sTime_10ms (in 10ms units).
Note that HTTPTimeout::sClockWidth is no longer used for HTTPTimeout (as
if it's value became a constant of 0.01, the fraction 10ms / 1s).
A new variable, HTTPTimeout::sClockWidth_10ms is used to calculate
sTime_10ms (only).

Also HTTPTimeout::mStalled and HTTPTimeout::mLowSpeedClock changed units
to the same as of sTime_10ms (time since epoch in 10ms units).
2013-04-09 22:27:23 +02:00
Aleric Inglewood
fa05647068 Compile fix 2013-03-27 00:56:28 +01:00
Aleric Inglewood
524fdf033d Merge remote-tracking branch 'singu/master' 2013-03-26 21:10:00 +01:00
Aleric Inglewood
2916d9353e Comment fix. 2013-03-23 22:22:38 +01:00
Drake Arconis
0eeddb0607 Merge branch 'master' of git://github.com/AlericInglewood/SingularityViewer into Cupcake
Conflicts:
	indra/newview/llappviewer.cpp
2013-03-20 08:31:04 -04:00
Aleric Inglewood
fc642019b3 Fix recursive call to LLNotifications::initSingleton 2013-03-19 19:56:20 +01:00
Drake Arconis
20cdb35172 Import some changes from internal 2013-03-12 06:03:06 -04:00
Drake Arconis
d345630b2c Merge remote-tracking branch 'Aleric/master' into Cupcake 2013-03-11 19:55:38 -04:00
Aleric Inglewood
96d302aa42 Be more verbose about internal (curl / timeout) errors.
Translates the CURLE_WRITE_ERROR into what it really means: that the low
speed check failed.
2013-03-09 05:26:52 +01:00
Aleric Inglewood
e3f4022ffa Merge remote-tracking branch 'singu/master'
Conflicts:
	indra/newview/llvoavatar.cpp

Bug fix is no longer needed.
2013-03-07 16:53:15 +01:00
Aleric Inglewood
b9b5f13624 Run HTTPGetResponder in any thread.
This fixes a bug where unref() was called when a state machine was
aborted before it reached bs_initialized. Debug code was added to detect
errors related to that.

In order to run HTTPGetResponder in any thread, I needed direct access
to LLHTTPClient::request, so I had to move that to the header file,
and therefore had to move ERequestAction from LLURLRequest to
LLHTTPClient to avoid include problems.

With this, textures are fetched with no latency: call to
LLHTTPClient::request runs all the way till the state machine is idle
(AICurlEasyRequestStateMachine_waitAdded). There is small delay till the
curl thread wakes up, which then processes the request and opens the url
etc. When the transaction is finished, it calls
AIStateMachine::advance_state(AICurlEasyRequestStateMachine_removed_after_finished)
which subsequently doesn't return until the state machine is completely
finished (bs_killed). The LLURLRequest isn't deleted yet at that point
because the AITimer of the LLURLRequest runs in the main thread: it is
aborted, but only the next time the main thread state engines run that
is deleted and the timer keeps an LLPointer to it's parent, the
LLURLRequest, so only then the LLURLRequest object is destructed. This
however has nothing to do with the texture-bandwidth loop.
2013-03-07 01:52:21 +01:00
Aleric Inglewood
c4dceaf3e9 Rewrite of AIStateMachine, version 2. 2013-03-06 03:26:43 +01:00
Drake Arconis
0e3a9b28bd CMake cleanup and organization 2013-03-05 12:24:51 -05:00
Drake Arconis
b800320a49 Remove LLMemType and related files 2013-03-04 12:02:01 -05:00
Siana Gearz
13e0bc2742 Merge branch 'sunshine' of git://github.com/Shyotl/SingularityViewer
Conflicts:
	indra/newview/lldrawable.cpp
	indra/newview/llviewerwindow.cpp
2013-02-26 00:20:26 +01:00
Shyotl
d27b329afb Minor bit of cleanup. Also now using glTexGenf instead of glTexGeni for fixed-function water texcoords. 2013-02-25 13:02:22 -06:00
Siana Gearz
00cb7a0e51 Merge branch 'sunshine' of git://github.com/Shyotl/SingularityViewer 2013-02-19 21:12:14 +01:00
Shyotl
76f3dc9e19 Massive sunshine/viewer-dev catchup. Further implemented serverside baking and added/updated metrics feedback. 2013-02-19 01:50:46 -06:00
Siana Gearz
0f54a2777e Merge branch 'master' of git://github.com/lkalif/SingularityViewer 2013-02-17 15:36:59 +01:00
Siana Gearz
49c872c86d Merge branch 'sunshine' of https://github.com/Shyotl/SingularityViewer 2013-02-17 15:28:48 +01:00
Shyotl
4cc35d6c66 Fixed up some silly issues with the client tag system. 2013-02-17 02:54:30 -06:00
Shyotl
51cbb8d6bd Catch up with LL regarding viewer stat recording. 2013-02-14 17:45:10 -06:00
Shyotl
f147a734b1 LLStat dead code removal 2013-02-12 20:47:55 -06:00
Shyotl
6725c17f01 LLSys merge and cleanup. 2013-02-12 15:10:15 -06:00
Shyotl
24efffc68a LLInitParam merge. 2013-02-12 15:08:11 -06:00
Shyotl
1eb142535c Merge in changes to avoid a few potential problems with LLUUID when accessed from multiple threads. 2013-02-12 15:02:17 -06:00
Shyotl
b901e57c55 Start culling of llmemtype (for now just #ifdef'd to nothingness. 2013-02-12 15:00:50 -06:00
Latif Khalifa
69c43947ed Don't include warnings of singleton access from initSingleton() to the end users (release build) 2013-02-12 03:30:13 +01:00
Aleric Inglewood
e7aeb3feaf Add AINRLock for debugging purposes.
This class can be used as RWLOCK parameter to AIThreadSafe to check that
data is only accessed by a single thread (like
AIThreadSafeSingleThreaded) AND is never write locked when a read or
write lock was already obtained (by the same thread). It doesn't
actually lock anything, it just keeps track if the "lock" was obtained
before. The use case is to check if STL containers aren't being used
(read or write locked) by a calling function when additional write
access is necessary, as write access might invalidate iterator that
point to the container (where the previous lock was taken).
2013-02-08 17:28:21 +01:00
Aleric Inglewood
adf4c9a0ce Make the type of the read/write lock of AIThreadSafe a template parameter.
This allows passing a different type than the default AIRWLock for
debugging purposes.

The signature of the class used for RWLOCK should be:

struct RWLock {
  // Default constructor.
  RWLock(void);

  // Block until it's safe to read the data.
  // high_priority is a hint that granting this thread the read lock is more important than granting another thread a write lock.
  void rdlock(bool high_priority = false);
  // Release the obtained read lock.
  void rdunlock();
  // Block until it's safe to write to the data.
  void wrlock();
  // Release the obtained write lock.
  void wrunlock();
  // Convert the obtained write lock into a read lock.
  void wr2rdlock();
  // Block until it is possible to convert the obtained read lock into a write lock.
  void rd2wrlock();

  // Return true when a read or write is obtained and subsequent calls to release the lock are expected.
  bool isLocked() const;
};
2013-02-08 17:28:21 +01:00
Latif Khalifa
046735f043 Merge remote-tracking branch 'upstream/exp' 2013-01-30 05:49:45 +01:00
Latif Khalifa
8584e6da4c Merge branch 'master' into meshupload
Conflicts:
	indra/llcommon/llhash.h
	indra/newview/CMakeLists.txt
	indra/newview/llfloatermodelpreview.cpp
	indra/newview/llfloatermodelpreview.h
	indra/newview/llpanelprofile.h
2013-01-30 00:36:31 +01:00
Siana Gearz
7755033017 Lazily fix static deinitialization fiasco 2013-01-27 01:43:38 +01:00
Aleric Inglewood
6dc4a60724 Changes to LLThread
* Call a virtual terminated() that by default sets mStatus to STOPPED,
  instead of setting it to STOPPED directly, allowing to override
  the behavior of a LLThread derived class when the thread is about
  the exit.
* Make setQuitting() public, so it can also be used to hint to a
  thread that it should stop at its earliest convience.
2013-01-26 19:15:57 +01:00
Aleric Inglewood
f6785c399d Added support for LLCondition to AIThreadSafeSimple. 2013-01-26 18:35:42 +01:00
Aleric Inglewood
db7155666d Merge branch 'master' into meshupload
Conflicts:
	indra/cmake/00-Common.cmake

One diff added /MP to CMAKE_CXX_FLAGS_DEBUG while
another removed /arch:SSE2 from the same line.

Fixed to honor both changes.
2013-01-21 19:16:06 +01:00
Latif Khalifa
18816ae146 Merge remote-tracking branch 'shyotl/sunshine' 2013-01-21 11:25:10 +01:00
Shyotl
dc106c5442 Fix some compiler warnings/errors. Error in llinventorymodelbackgroundfetch was introduced by partial commit. 2013-01-20 17:10:38 -06:00
Siana Gearz
4cd2de0fff Version 1.7.3 2013-01-20 05:57:05 +01:00
Aleric Inglewood
db17b93156 Merge branch 'master' into meshupload
Conflicts:
	indra/newview/llmeshrepository.cpp

Added /* */ around the 'virtual' keyword in two places
that collided with changes in meshupload from lightdrake.
2013-01-13 17:59:49 +01:00
Aleric Inglewood
f9a868a979 Compile fix for VC++ 2013-01-11 17:16:05 +01:00