Commit Graph

2467 Commits (712a4e70c81c1908e4e7668ff1695a9415ec4b71)

Author SHA1 Message Date
Oz Linden 1f23f5a65b merge changes for 3.8.2-release 2015-08-11 11:54:57 -04:00
Oz Linden 71a468c6fb merge changes for other open sourc contributions 2015-07-30 11:09:00 -04:00
Oz Linden 3a07b111a5 3.8.1-release 2015-07-14 18:12:36 -04:00
Brad Payne (Vir Linden) 76fb5f1542 merge with viewer tools update 2015-04-24 10:08:13 -04:00
Brad Payne (Vir Linden) 4d689fc515 MAINT-4653 WIP, DRTVWR-397 WIP - log output to file now includes tags. Request max 5 attachments per idle loop to reduce sim-side failures seen when requesting large numbers. 2015-04-22 16:09:02 -04:00
Merov Linden d631f2fd4d Pull merge from lindenlab/viewer-tools-update (includes viewer-release) 2015-04-14 13:46:01 -07:00
Oz Linden 034fb74d05 merge changes for STORM-2113 2015-04-14 05:39:36 -04:00
Oz Linden bef5a95caf minimal changes to compile on Xcode 6.2 2015-04-14 05:00:58 -04:00
Oz Linden a8ef252571 merge changes for 3.7.27-release 2015-04-13 16:23:36 -04:00
Cinder 5a282abe18 STORM-2113 - uri parsing cleanup and fixes 2015-04-11 15:23:06 -06:00
Oz Linden 5c6cf3e7fb restore the ll[io]fstream because we need them as wrappers on Windows for wide char paths; on other platforms they are now just typedefs to the std classes 2015-04-10 11:02:37 -04:00
Merov Linden 8952e81775 Merge lindenlab/viewer-tools-update 2015-04-09 16:51:02 -07:00
Oz Linden 8b42c7898e replace llifstream and llofstream with std::ifstream and std::ofstream respectively 2015-04-07 17:59:28 -04:00
Oz Linden 3a57b18896 convert llifstream and llofstream to std::ifstream and std::ofstream respectively 2015-04-07 17:28:05 -04:00
MNikolenko ProductEngine dbb304ab20 MAINT-5023 FIXED URIparser crash in LLUrlEntryBase::urlToLabelWithGreyQuery 2015-04-07 20:58:48 +03:00
Oz Linden 77d25204ea clarity and logging cleanup 2015-04-02 15:41:45 -04:00
Mnikolenko ProductEngine e03f1521c8 MAINT-5023 URIparser crash in LLUrlEntryBase::urlToLabelWithGreyQuery 2015-04-02 11:50:17 +03:00
Mnikolenko ProductEngine b10940e8e3 MAINT-5019 FIXED Undesired http:// added to domains sent in chat 2015-03-27 11:23:58 +02:00
Mnikolenko ProductEngine 18bacca5ca MAINT-5023 URIparser crash in LLUrlEntryBase::urlToLabelWithGreyQuery 2015-03-24 18:30:40 +02:00
Oz Linden d6f7a16a68 merge changes for 3.7.26-release 2015-03-23 22:39:18 -04:00
Merov Linden 9ba10bf1f2 Merge lindenlab/viewer-tools-update 2015-03-16 09:49:57 -07:00
Merov Linden 11d9bf6517 Pull merge from lindenlab/viewer-release 2015-02-27 15:32:37 -08:00
Oz Linden 905431cf60 merge changes for 3.7.25-release 2015-02-24 15:48:28 -05:00
Nat Goodspeed ae6440eecc MAINT-4744: Eliminate viewer dependency on (old) GNU libstdc++.
To be more accurate, this changeset doesn't actually eliminate the dependency:
it eliminates the use cases for the llifstream / llofstream feature that
requires it.
Currently you can construct an llifstream or llofstream from an open LLFILE*
file handle (or, except on Windows, an int file descriptor). But rather than
containing a streambuf implementation based on FILE*, llfile.h relies on the
fact that the Windows std::filebuf happens to support that as a nonstandard
extension; also on a nonstandard GNU extension __gnu_cxx::stdio_filebuf<char>.
To move from GNU libstdc++ to clang's libc++ (the direction on Mac), we could
code a streambuf that supports FILE*. But before doing that, it's worth asking
whether anyone actually uses this questionable feature.
In fact there were only two methods: LLWearable::exportFile() and importFile()
-- and only one call to either, in LLViewerWearable::saveNewAsset(). The code
in saveNewAsset() opened the LLFILE* immediately before calling exportFile(),
meaning we could reasonably push the open operation down into exportFile().
That logic was complex anyway due to the need for the caller to close the
LLFILE* regardless of the success of the exportFile().
Change LLWearable::exportFile() and importFile() to accept a std::string
filename rather than an open LLFILE*. Change LLViewerWearable::saveNewAsset()
to simply call exportFile(filename) rather than horsing around with an LLFILE*
handle. (This improves the code in another way too: it encapsulates the need
to open the relevant file in binary mode. Previously, each caller had to
remember to do that.)
To prevent inadvertent reintroduction of ll[io]fstream(LLFILE*) code, add
llstream_LLFILE preprocessor macro (default 0) to control access to the
relevant constructors. Also suppress rdbuf() override, the only method whose
signature references llstdio_filebuf.
2015-01-28 15:55:18 -05:00
Nat Goodspeed ba43a216fd Disambiguate constructor's initialization call to its base class.
A particular LLInitParam::TypeValuesHelper specialization is derived from a
different TypeValuesHelper specialization. The subclass constructor
TypeValuesHelper(...) has previously forwarded the call to its base-class
constructor with:
TypeValuesHelper(val): TypeValuesHelper(val) {}
This is the first time I've looked at that; I'm a bit surprised that previous
compilers blithely accept it, and apparently understand the intent. gcc 4.7
complains that we would need to turn on -std=c++11 to support delegating
constructors; obviously the second TypeValuesHelper is now assumed to be the
class being defined, rather than its base class.
Fortunately the class already has typedefs for both specializations, fully
qualified with all template parameters, so I simply replaced the second
TypeValuesHelper reference with base_t.
2015-01-22 01:38:38 +00:00
Nat Goodspeed feb341d37c Continue gradually replacing Boost.Lambda with Boost.Phoenix.
For some reason, after the upgrade to Boost 1.57, gcc 4.6.3 has trouble with
the boost::lambda::_1 usage in stringize.h. This is consistent with other
cases we've encountered in which Boost.Lambda appears to be unmaintained and
losing its compatibility with other libraries. Fortunately Phoenix provides a
functional equivalent, albeit spelled differently.
2015-01-16 19:54:35 +00:00
Nat Goodspeed 33649e848b Experimentally try full-size LLLeap stream test on Windows.
The new toolchain may (!) have fixed a longstanding bug in LLLeap / APR when
we try to pump large volumes of data through a Windows named pipe using APR
nonblocking I/O. This used to fail pretty consistently because the APR
nonblocking write call would sometimes spuriously return "would block" when in
fact the data buffer was completely written; the caller would later retry,
which of course would duplicate some of the data in the pipe. Preliminary
experiments with VS 2013 suggest this may have been resolved. This changeset
is to propagate the experiment to a wider range of Windows systems; we may
need to revert it if in fact the bug persists.
2015-01-12 12:11:37 -05:00
Merov Linden 618e13a2d6 DD-297 : Performance on login : Refactored the code so that we have a new LLMarketplaceFolderBridge class in the bridge model. Only the panels with the use_marketplace_folders param flag will use that one. 2015-01-02 17:35:50 -08:00
Oz Linden f02a85c36a merge some linux fixes and OPEN-287 2014-12-23 11:13:24 -05:00
Oz Linden d91fe250ac fix dos line endings 2014-12-23 11:12:19 -05:00
callum_linden a54188cb3d Investigative check-in to see if system clock() function can be used to time ms_sleep() calls and adjust expectations accordingly 2014-12-22 14:19:19 -08:00
Oz Linden 111900150d work arounds to compile on linux 2014-12-22 16:42:55 -05:00
Nat Goodspeed 3b7d3cb1ea For one use case, boost::bind() better than boost::phoenix::bind().
We use boost::phoenix::placeholders::arg1 to imply a whole lambda expression,
replacing boost::lambda. But to bind a plain function in a more
straightforward way, seems classic boost::bind() works while
boost::phoenix::bind() does not.
2014-12-16 15:17:24 -05:00
Nat Goodspeed 1bd8a67dcb Isolate #pragma clang to __clang__ compilations.
It's very irritating that Visual Studio produces a warning for unrecognized
#pragmas, which we then merrily turn into an error -- #pragma is inherently
compiler-specific!
2014-12-16 13:54:29 -05:00
Oz Linden e6a7ce08ed fix dos line endings 2014-12-12 17:21:24 -05:00
Nat Goodspeed eae38f7d57 Eliminate use of boost::lambda with boost::function (Trac #10864).
https://svn.boost.org/trac/boost/ticket/10864
I've used boost::lambda with boost::function in a number of creative ways over
the years. But the clang 6 shipped with Xcode 6 seems to have somehow broken
lambda + function in Boost 1.57. boost::phoenix is a partial workaround.
Sadly, lambda's comma-operator overload doesn't seem to be supported,
necessitating a couple ugly workarounds.
With real lambdas now supported by current compilers, I'm sure the Boost
community has little incentive to repair the lambda + function problem.
Presumably we'll be able to use such features ourselves Real Soon Now...
2014-12-12 13:46:41 -08:00
Nat Goodspeed a2bb483f2d Disambiguate a few ensure() calls.
These were of the form ensure(std::string, something convertible to bool). Not
sure what the ambiguity was, but ensure(std::string, bool(something)) works
better.
2014-12-11 13:12:20 -05:00
Nat Goodspeed 0f1cf6e405 Clarify for VS 2013 that an operator bool() method returns bool.
For some reason VS 2013 (unlike its predecessors and other current compilers)
needs us to explicitly convert an operator bool() method's return expression
to bool.  :-P
2014-12-10 12:20:33 -05:00
callum_linden 3d94afafb5 Fix for build problems with LLTrace::AccumulatorBuffer copy ctor in VS2013 (only) 2014-12-10 08:56:13 -08:00
callum_linden 0b1259a084 no implicit conversion from ofsteam to bool in VS2013!!!! 2014-12-09 17:29:07 -08:00
Jonathan Yap 44f5d73209 STORM-2086 Convert old style llinfos and llwarns to new format 2014-11-20 16:25:11 -05:00
Cinder 6df6aef621 OPEN-282 - Define LL_THREAD_LOCAL for our platforms in order to unify TLS support 2014-11-19 22:27:36 -07:00
Cinder 5f608c0a23 OPEN-282 Use pthreads for TLS on mac 2014-11-19 08:01:28 -07:00
Oz Linden a74d0d44d1 remove skip from llframetimer_test now that it is fixed 2014-11-14 22:34:13 -05:00
Oz Linden 6b4916fc75 merge up to tip of viewer-tools-update 2014-11-14 22:32:54 -05:00
Oz Linden dbdbcbbd3c rewrite an llframetimer test to be less sensitive to extended ms_sleep calls 2014-11-14 17:22:26 -05:00
Nat Goodspeed 014065015a Convert llhash() to use boost::hash, per Cinder's suggestion. 2014-11-14 16:29:00 -05:00
Nat Goodspeed 6991eb58c3 Skip LLFrameTimer test<3>, which fails with Xcode 6.x builds.
Hopefully this is temporary until we figure out the real problem!
2014-11-14 12:09:55 -05:00
ruslantproductengine 799d13269a MAINT-3585 FIXED Viewer Crashes when attempting to upload image.
The bug was fixed, the reasone of crash is following. The Core Flow view
contain another GL context and will not care about restoring a previous.
I restore context manually.
This path also contain a minor changes in another files.

All changes described here.

Сhange's for fix current bug.
indra/llwindow/llwindow.h
indra/llwindow/llwindowheadless.h
indra/llwindow/llwindowmacosx.h
indra/llwindow/llwindowsdl.h
indra/llwindow/llwindowwin32.h
indra/newview/lllocalbitmaps.cpp
indra/newview/llviewerdisplay.cpp
indra/newview/llviewerdisplay.h

Twice mUsage initialization (replace to forward initialization).
indra/llcharacter/lljointstate.h

Looks like condition should be befor memcopy call, otherwise - possible CRASH.
indra/llcommon/llmd5.cpp

Unused condition and variables.
indra/llmath/llsphere.cpp

Looks like should be under if otherwise - possible CRASH
indra\llprimitive\llmodel.cpp

Useless assert's.
indra/llrender/llrender.cpp
indra/newview/lldaycyclemanager.cpp
2014-11-03 20:05:20 +02:00
ruslantproductengine edb7e3450f MAINT-4435 FIXED build fix patchset2 2014-10-28 17:12:49 +02:00