Commit Graph

361 Commits

Author SHA1 Message Date
Aleric Inglewood
c4dceaf3e9 Rewrite of AIStateMachine, version 2. 2013-03-06 03:26:43 +01: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
Shyotl
54771409d6 Merge branch 'master' into sunshine
Conflicts:
	indra/llimage/llimage.cpp
	indra/llui/llui.cpp
	indra/newview/llvoavatar.cpp
2013-01-08 17:05:29 -06:00
Drake Arconis
10c19731b3 Merge remote-tracking branch 'Aleric/master' 2013-01-08 13:11:43 -05:00
Aleric Inglewood
d8485350e7 Address clang warnings.
* Split off AIThreadSafeBitsPOD, because offsetof may only be used on POD types.
* Added ASSERT_ONLY and ASSERT_ONLY_COMMA
* Removed a few unused class members
* Fixed a bug in AIHTTPReceivedHeaders::equal that more or less only
  compared the length of the headers before :/
2013-01-08 17:50:09 +01:00
Drake Arconis
9f7e81cec2 Alt Compiler fixes 2013-01-08 06:17:39 -05:00
Drake Arconis
bc3ad59dd5 Revert "Fixed a build issue in clang"
This reverts commit 6d379448be.
2013-01-08 06:16:28 -05:00
Shyotl
d71210e942 Trivial changes, mostly to clean up diff noise. Majority of changes are comment corrections or licenseinfo updates. (does not include newview directory) 2013-01-07 14:44:54 -06:00
Drake Arconis
6d379448be Fixed a build issue in clang 2013-01-07 11:59:25 -05:00
Aleric Inglewood
a9a308e5e9 Never freeze again.
Put snapshot related floaters always on top of the full screen preview.
Make having multiple running uploads more robust.
Fix infinite recursion when clicking on the bottom 'Snapshot' button
under certain conditions.
Unfreeze time more robust; unfreeze time out of precaution when
starting an upload (if 'Keep open' not checked).
Fixed a bug that caused all callbacks for successful feed uploads to be
ignored.
2013-01-06 23:40:53 +01:00
Shyotl
0b31537bfe Updated llfile so that llofstream and llifstream actually work when given a file handle. 2013-01-05 17:13:35 -06:00
Siana Gearz
ddef80d2cf Revert "Attempt to fix frame timer on broken mainboards"
This reverts commit 5eb99b7d2f.
2013-01-03 03:02:15 +01:00
Shyotl
9fb4e677a6 Updates to LLScrollListCtrl and related inter-dependencies. Also added ability to set face texture to 'None' (LLUUID::null). 2012-12-08 00:56:58 -06:00
Shyotl
794dbacea3 Merge branch 'master' of https://github.com/AlericInglewood/SingularityViewer.git into testpit
Conflicts:
	indra/newview/lldrawpoolavatar.cpp
	indra/newview/llviewertexturelist.cpp
	indra/newview/llworldmap.cpp
	indra/newview/pipeline.cpp
2012-11-29 11:54:41 -06:00
Siana Gearz
5eb99b7d2f Attempt to fix frame timer on broken mainboards 2012-11-13 02:50:15 +01:00
Aleric Inglewood
26a734a538 Add fasttimers around obtaining a mutex or waiting on a condition. 2012-11-10 02:33:48 +01:00
Aleric Inglewood
c0ac428179 Code cleanup
* Moved Responder stuff to LLHTTPClient.
* Renamed LLHTTPClient::Responder to LLHTTPClient::ResponderWithResult.
* Deleted LLHTTPClientAdapter and LLHTTPClientInterface.
* Renamed AICurlInterface::TransferInfo to AITransferInfo and moved it
  to llhttpclient.h
* Removed 'CURLcode code' argument from completed_headers.
2012-10-31 23:11:42 +01:00
Aleric Inglewood
daac25c343 Bug fix, introduced in commit 0bee4a92 2012-10-22 20:31:33 +02:00
Shyotl
dff6171605 More alignment crap. 2012-10-22 02:51:41 -05:00
Shyotl
1b89e5c973 Dragged in a bunch of alignment fixes from LL. Should allow disabling of tcmalloc on windows/linux32 if such is ever implemented. 2012-10-16 02:33:05 -05:00
Aleric Inglewood
56f2f0b727 Merge branch 'curlthreading2' into curlthreading3 2012-09-19 04:14:25 +02:00
Aleric Inglewood
19f325aa09 Merge remote-tracking branch 'singu/master' into curlthreading2
Conflicts:
	indra/llcommon/CMakeLists.txt

Resolved with kdiff3 automatically.
2012-09-19 04:11:16 +02:00
Siana Gearz
44b2392a10 Version 1.7.2 2012-09-15 21:33:09 +02:00
Siana Gearz
3ef9e3bc69 Merge branch 'master' of git://github.com/LightDrake/SingularityViewer 2012-09-11 20:18:05 +02:00
Aleric Inglewood
131959e388 Merge branch 'curlthreading2' into curlthreading3 2012-09-11 15:19:28 +02:00
Aleric Inglewood
d23835a6c2 Merge remote-tracking branch 'singu/master' into curlthreading2
Conflicts:
	indra/newview/statemachine/aistatemachine.cpp

Huh - you re-INDENTED a file that you didn't merge yet?
How about merging curlthreading2 and curlthreading3
before doing THAT? :/

Obviously I did an "use ours" here.
2012-09-11 15:15:46 +02:00
Siana Gearz
8a44c8fce1 Fast timer fix-up
The logic is incorrect in principle, but at least it's better behaved now.
Also, get fast timer out of important parts of aistatemachine.
2012-09-10 02:06:07 +02:00
Drake Arconis
86ad4aabf3 Cmake changes needed for standalone 2012-09-07 17:53:13 -04:00