Commit Graph

4919 Commits

Author SHA1 Message Date
Aleric Inglewood
55a676e85d Compile warning fix. 2013-04-20 05:04:07 +02:00
Aleric Inglewood
9fb3fe21bc Compile warning fix. 2013-04-20 05:03:17 +02:00
Aleric Inglewood
8d028e6948 Fix for AIStateMachineThread (LLThreadSafeRefCount: deleting non-zero reference)
This fixes
https://code.google.com/p/singularity-viewer/issues/detail?id=736

The problem was that we need to keep the 'user' derived THREAD_IMPL
alive in the thread, and therefore used an LLPointer<THREAD_IMPL>
(as base class of AIStateMachineThread<THREAD_IMPL>), and therefore
THREAD_IMPL, derived from AIThreadImpl had to be derived from
LLThreadSafeRefCount. However, AIStateMachineThread<THREAD_IMPL> also
needed to be a statemachine of itself and is derived from
AIStateMachineThreadBase derived from AIStateMachine which is ALSO
derived from LLThreadSafeRefCount - that in this case wasn't really
needed. An attempt to deactive it by calling ref() from the constructor
of AIStateMachineThreadBase failed on the fact that LLThreadSafeRefCount
insists that its ref count mRef is exactly zero when it is being
deleted.

The chosen solution is to remove the ref count from AIThreadImpl and use
the LLThreadSafeRefCount base class of AIStateMachineThreadBase. The
result is that not only THREAD_IMPL, but also the state machine object
is kept alive, but that doesn't seem like a problem.

Thus, instead of passing a AIThreadImpl* to
AIStateMachineThreadBase::Thread, we now pass a
AIStateMachineThreadBase* to it to keep the whole of the
AIStateMachineThread<THREAD_IMPL> object alive, which has a THREAD_IMPL
as member now. This member then can be accessed through a virtual
function impl(). Another result of this change is that the 'user' (the
class derived from AIThreadImpl, THREAD_IMPL) now has to deal with the
LLPointer, and use LLPointer<AIStateMachineThread<THREAD_IMPL> >
instead of just AIStateMachineThread<THREAD_IMPL> and also allocate
this object himself. The access from there then changes into a -> to
access the state machine (as opposed to a .) and ->thread_impl() to
access the THREAD_IMPL object (as opposed to a ->).
2013-04-20 04:54:25 +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
7b42ad5e2a Demote assert and allow UDP fallback in case COF fetching times out 2013-04-20 04:49:18 +02:00
Latif Khalifa
f6f505d487 Merge remote-tracking branch 'shyotl/master' 2013-04-20 04:29:59 +02:00
Aleric Inglewood
e0aa3489f8 Fix for AIStateMachineThread (LLThreadSafeRefCount: deleting non-zero reference)
This fixes
https://code.google.com/p/singularity-viewer/issues/detail?id=736

The problem was that we need to keep the 'user' derived THREAD_IMPL
alive in the thread, and therefore used an LLPointer<THREAD_IMPL>
(as base class of AIStateMachineThread<THREAD_IMPL>), and therefore
THREAD_IMPL, derived from AIThreadImpl had to be derived from
LLThreadSafeRefCount. However, AIStateMachineThread<THREAD_IMPL> also
needed to be a statemachine of itself and is derived from
AIStateMachineThreadBase derived from AIStateMachine which is ALSO
derived from LLThreadSafeRefCount - that in this case wasn't really
needed. An attempt to deactive it by calling ref() from the constructor
of AIStateMachineThreadBase failed on the fact that LLThreadSafeRefCount
insists that its ref count mRef is exactly zero when it is being
deleted.

The chosen solution is to remove the ref count from AIThreadImpl and use
the LLThreadSafeRefCount base class of AIStateMachineThreadBase. The
result is that not only THREAD_IMPL, but also the state machine object
is kept alive, but that doesn't seem like a problem.

Thus, instead of passing a AIThreadImpl* to
AIStateMachineThreadBase::Thread, we now pass a
AIStateMachineThreadBase* to it to keep the whole of the
AIStateMachineThread<THREAD_IMPL> object alive, which has a THREAD_IMPL
as member now. This member then can be accessed through a virtual
function impl(). Another result of this change is that the 'user' (the
class derived from AIThreadImpl, THREAD_IMPL) now has to deal with the
LLPointer, and use LLPointer<AIStateMachineThread<THREAD_IMPL> >
instead of just AIStateMachineThread<THREAD_IMPL> and also allocate
this object himself. The access from there then changes into a -> to
access the state machine (as opposed to a .) and ->thread_impl() to
access the THREAD_IMPL object (as opposed to a ->).
2013-04-20 04:28:23 +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
Lirusaito
b7c1b9f42b Added OverrideAnimations string, so that notifications present an actual permission QUESTION when asking for the perm.
Conflicts:

	indra/newview/llviewermessage.cpp
2013-04-20 03:45:15 +02:00
Melanie
2d717dcf17 Merge branch 'master' into Avination-4.0 2013-04-20 03:13:18 +02:00
Melanie
f83717255f Merge branch 'master' of github.com:singularity-viewer/SingularityViewer 2013-04-20 03:13:00 +02:00
Melanie
d593ebfa34 Add another menu insert point in the admin menu. 2013-04-20 03:12:49 +02:00
Melanie
35544cac74 Add another menu insert point in the admin menu. 2013-04-20 03:12:12 +02:00
Lirusaito
eac5a45562 Added OverrideAnimations string, so that notifications present an actual permission QUESTION when asking for the perm. 2013-04-19 20:10:05 -04:00
Latif Khalifa
3bdeb8e8a8 TEMPORARILY disable erroring out during mesh upload 2013-04-20 00:28:36 +02:00
Lirusaito
b8d2bd578c French translation update 2013-04-19 23:59:18 +02:00
Lirusaito
6c93dc1d82 Update LSL information (Adds new AnimationOverride) 2013-04-19 23:59:05 +02:00
Lirusaito
c79487d3da [Frosting] Modernize llpanelmsgs.* and the Popups Preferences
Makes the scrolllists multiselect, adds a disable button, rearranges the buttons, and maximizes vertical and horizontal use of real estate for scroll lists.
Finally notifications can easily be passed back and forth between the two lists
Removes the pointless alerts for explaining what "en/dis-able all" does.  If some language needs larger explanation, there's always tooltips, but it should be obvious enough without notifications.

As for code changes, this swaps a whole bunch of static functions over to boost::bind and removes includes.

Translators will need to update panel_preferences_popups.xml (and notifications.xml)
2013-04-19 11:49:29 -04:00
Lirusaito
4cb28f1dea Update/Sync in llviewermessage, makes more things auto-previewable, like in v3. 2013-04-19 11:21:32 -04:00
Lirusaito
8f3ff01703 Picked up changes from viewer-maint-2287
Adaptation of current merchant outbox project viewer to conform to Singularity's needs.

Adds the following commits by Merov Linden:
a5db366 MAINT-2287 : WIP : Implement a market place state
43fc74b MAINT-2287 : WIP : Fix compile issue
cb887fe MAINT-2287 : Fixed : Test the merchant/no merchant status without relying on outbox, Recreate missing outbox for a merchant, UI clean up on init.
f1934c0 MAINT-2301 : WIP : Catch a bit more 4xx and 5xx error codes, display the error code in the alert.
3fbbe6c MAINT-2301 : Fixed : Ignoring 499 timeout errors on POST (safe).
3dc6263 MAINT-2301 : Do not treat 404 errors (server returns not found) as 403 errors (forbidden, i.e. resident is not a merchant)
94039ee MAINT-2301 : Change messaging in the Merchant Outbox panel when an error happened, so not to be confused with the not-a-merchant case.
7c9cb2e MAINT-2452 : Fixed : Do not clear the cookie in IMPORT_DONE_WITH_ERRORS case so future retry have a chance to work.
67b872e WENG-618   : Added debug printout for POST and GET when InventoryOutboxLogging is turned on

Translators, you will need to update strings.xml and notifications.xml for this change.
2013-04-18 23:28:09 -04:00
Shyotl
7863484f10 Less prim peekaboo antics. 2013-04-18 17:25:27 -05:00
Shyotl
733b8e75ac Less prim peekaboo antics. 2013-04-18 23:44:25 +02:00
Latif Khalifa
7e66eb08cf Merge remote-tracking branch 'shyotl/master' 2013-04-18 23:24:40 +02:00
Lirusaito
b51615be20 Support Legacy Region/Estate Environment
Also Disable Environment Tab when the cap required to use it isn't supported.
2013-04-18 23:24:30 +02:00
Shyotl
0261f13670 LLSliderCtrl callbacks actually get the child LLSlider object, not the LLSliderCtrl object. 2013-04-18 16:02:10 -05:00
Shyotl
6f415118ef LLSliderCtrl callbacks actually get the child LLSlider object, not the LLSliderCtrl object. 2013-04-18 15:54:05 -05:00
Melanie
63b7b6ddc9 Merge branch 'master' into Avination-4.0 2013-04-18 06:04:52 +02:00
Melanie
ceade84fb0 Merge branch 'master' of github.com:singularity-viewer/SingularityViewer 2013-04-18 06:04:30 +02:00
Shyotl
d1e86e66d8 Less prim peekaboo antics. 2013-04-17 22:32:53 -05:00
Melanie
4cf8780711 Merge branch 'master' into Avination-4.0 2013-04-18 05:19:15 +02:00
Melanie
765a4749c9 Allow the octopus to set a channel at floater level to disambiguate between simultaneously open floaters 2013-04-18 05:15:34 +02:00
Lirusaito
2b3350d686 Compile fix for internal pieces accidentally staged. 2013-04-17 22:21:07 -04:00
Lirusaito
22435b4b91 Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer into Frosting
Conflicts:
	indra/newview/llviewerwindow.cpp
2013-04-17 21:06:57 -04:00
Lirusaito
c9f235a5d9 French translation update 2013-04-17 21:00:32 -04:00
Lirusaito
11b4eb153c Support Legacy Region/Estate Environment
Also Disable Environment Tab when the cap required to use it isn't supported.
2013-04-17 19:42:56 -04:00
Melanie
5d3f50c307 Merge branch 'master' into Avination-4.0 2013-04-18 00:45:10 +02:00
saphira
50f03d83c0 Fix SuSe Linux build break 2013-04-18 00:44:50 +02:00
Lirusaito
5ac2a23b8d Update LSL information (Adds new AnimationOverride) 2013-04-16 20:16:44 -04:00
Latif Khalifa
110f502960 Merge remote-tracking branch 'shyotl/master' 2013-04-16 17:50:26 +02:00
Shyotl
11358746da Use legacy function pointer for old legacy setTextEntryCallback signature. 2013-04-16 10:49:56 -05:00
Melanie
88ef66f90f Merge branch 'master' into Avination-4.0 2013-04-16 17:49:49 +02:00
Latif Khalifa
e2a9d83b3e Merge remote-tracking branch 'melanie_t/master' 2013-04-16 17:35:44 +02:00
Melanie
0909bf1133 Remove the spammy leftover debug message. Thought I'd done that already... 2013-04-16 14:07:34 +02:00
Melanie
2803c4ddf6 Merge branch 'master' into Avination-4.0 2013-04-16 13:33:41 +02:00
Melanie
a2f7bee568 Extend the octopus to allow avatar pickers to be used. 2013-04-16 13:32:35 +02:00
Melanie
12b98eedbe Extend the octopus to allow avatar pickers to be used. 2013-04-16 13:20:24 +02:00
Latif Khalifa
97809b3a22 Merge remote-tracking branch 'melanie_t/master' 2013-04-16 12:53:37 +02:00
Melanie
ab2f06d64e Add some much needed parens 2013-04-16 12:50:22 +02:00
Melanie
ab29c73ff5 Hide the export check boxes when on SL. 2013-04-16 12:35:02 +02:00
Melanie
a52fdd0dd0 Extend the octopus to allow avatar pickers - step 1 2013-04-16 12:15:43 +02:00