Commit Graph

5730 Commits

Author SHA1 Message Date
Siana Gearz
ff3f6eccf7 One handed walking and running - LMB+RMB on your avatar 2013-11-29 11:33:59 +01:00
Siana Gearz
b7e9a94744 Fix closing the pay floater, reported in chat by Margot 2013-11-29 10:05:17 +01:00
Siana Gearz
faf5a8e694 Translation and debranding fixes 2013-11-29 08:47:25 +01:00
Siana Gearz
8a13599436 Merge branch 'master' of https://github.com/Lirusaito/SingularityViewer 2013-11-29 06:27:05 +01:00
Siana Gearz
767597ffe3 Merge branch 'master' of https://github.com/AlericInglewood/SingularityViewer 2013-11-29 06:25:10 +01:00
Siana Gearz
919fdafad5 Language properties clean-up 2013-11-29 06:24:55 +01:00
Shyotl
78e3d61b98 Remove ambient occlusion darkening from all deferred shaders except the one that actually calculates occlusion values.. (aka every shader except class2/softenLightF.glsl) 2013-11-28 21:07:25 -06:00
Inusaito Sayori
fd21afa0b3 French ALM words 2013-11-28 20:47:51 -05:00
Inusaito Sayori
5491ff8a51 [LLIMMgr/LLIMPanel] Fix Issue 1254: bug voice in conference
Conference ids are subject to change, switched to boost::ref to bind the real one.
SV-1247 #close Fixed nao~
2013-11-28 20:18:29 -05:00
Inusaito Sayori
909ce355e2 [LLIMMgr/LLIMPanel] Switched from dialog checks for nothing special to generic P2P session checking 2013-11-28 20:08:57 -05:00
Inusaito Sayori
63a9555d17 Use Links.SingularityViewer for Issue Tracker link. 2013-11-27 12:27:03 -05:00
Aleric Inglewood
e85241d9ab Merge remote-tracking branch 'singu/master' 2013-11-26 22:15:00 +01:00
Aleric Inglewood
38957ff531 Reduce calls to LLHoverView::updateText
Basically to avoid calling LLTrans::getString 250 times per second,
and seeing
INFO: log_sStringTemplates_accesses: LLTrans::getString/findString called 19000 in total.
INFO: log_sStringTemplates_accesses: LLTrans::getString/findString called 20000 in total.
etc, every 40 seconds in the log.
2013-11-26 22:09:46 +01:00
Aleric Inglewood
8357a2b90b Speed up ll_assert_aligned
Although only used in Debug mode, this showed up in a profiling
with a very significant amount of CPU cycles (in a state when
the viewer bogged down to 1 FPS because of drawing terrain,
but still - significant compared to the code that was being
executed (ie, 10%)).

This patch should bring that down from a few hunderd to one clock
cycle.
2013-11-26 17:52:24 +01:00
Salvatore La Bua
dad7228d56 Add Italian skin translation provided by druskus 2013-11-26 11:20:18 +01:00
Latif Khalifa
e2c8e4950d Merge branch 'master' of git://github.com/Lirusaito/SingularityViewer 2013-11-26 11:15:48 +01:00
Inusaito Sayori
342c812121 Add initial_mime_type param to LLFloaterWebContent, defaulted to "text/html" 2013-11-26 05:13:02 -05:00
Inusaito Sayori
4c1880acac Default legacy log launch to on, and limit it to platforms it works on(windows) at compile time. 2013-11-26 04:49:37 -05:00
Inusaito Sayori
7383b0a974 Sync mats translation, thanks Nomade. 2013-11-26 04:35:00 -05:00
Inusaito Sayori
748d55ddd0 French Materials! (and cleanup\inclusion of old stuff) 2013-11-26 01:19:48 -05:00
Inusaito Sayori
7fd61c3bf1 Fix delete not working in text editors 2013-11-25 21:03:36 -05:00
Latif Khalifa
48850b2af0 Compile fix.
This appears to be committed blindly without testing even if it build.
ll_sd_from_color4() / ll_color4_from_sd() need to be used to store and get color from LLSD.
2013-11-26 01:03:10 +01:00
Latif Khalifa
4e79bce3e2 Added notification that chat report has been sent after the user logs in.
This will also add a line in the chat log with the report id
2013-11-26 00:38:00 +01:00
Latif Khalifa
362415fe8a Merge branch 'master' of git://github.com/AlericInglewood/SingularityViewer 2013-11-26 00:36:53 +01:00
Latif Khalifa
38248ac5b3 Merge branch 'master' of git://github.com/Lirusaito/SingularityViewer 2013-11-26 00:36:43 +01:00
Inusaito Sayori
98d5e4bea8 Possibly fix and restore Report Abuse to avs list menus 2013-11-25 03:44:07 -05:00
Inusaito Sayori
201ca35afb Possible fix for Mute/Unmute from lists of avatars not working 2013-11-25 03:33:13 -05:00
Inusaito Sayori
26655aefe0 Fix last online unknown showing up as zeroed out date.
Adds group_member_status_unknown to strings.xml
SV-1237 #close Fixed~
2013-11-25 03:24:40 -05:00
Aleric Inglewood
f8d9bcf487 Don't reset easy handles after using them.
We create a new easy handle every time.
2013-11-24 19:15:48 +01:00
Aleric Inglewood
ec436b0e3b Improve upload_finished detection for HTTP requests.
We detect the end of an upload when libcurl informs us
that it is no longer interested in knowing if a socket
is writable (which it tells us cause we're doing the call
to select(), by means of a call to MultiHandle::socket_callback).

However, this does not *always* work.
The debug output might look like this:

[...initialization and first part of a TLS handshake...]
0x7f759f0ad700   CURL        :   select(55, {17, 39, 46, 47, 48, 49, 50, 51, 52, 54}, NULL, NULL, timeout = 1 ms) = 7
0x7f759f0ad700   CURLTR      :   curl_multi_socket_action((CURLM*)0x7f758c002920, 46, CURL_CSELECT_IN, <unfinished>	<--- Calling curl_multi_socket_action (socket 46 is readable)
0x7f759f0ad700   CURLIO      0x13fce7b0       * SSLv3, TLS change cipher, Client hello (1):
0x7f759f0ad700   CURLIO      0x13fce7b0       S> 1 bytes
0x7f759f0ad700   CURLIO      0x13fce7b0       * SSLv3, TLS handshake, Finished (20):
0x7f759f0ad700   CURLIO      0x13fce7b0       S> 16 bytes
0x7f759f0ad700   CURLIO      0x13fce7b0       * SSL connection using AES256-SHA
0x7f759f0ad700   CURLIO      0x13fce7b0       * Server certificate:
0x7f759f0ad700   CURLIO      0x13fce7b0       *          subject: C=US; ST=California; L=San Francisco; O=Linden Lab, Inc.; CN=*.agni.lindenlab.com; emailAddress=root@lindenlab.com
0x7f759f0ad700   CURLIO      0x13fce7b0       *          start date: 2012-09-20 22:55:47 GMT
0x7f759f0ad700   CURLIO      0x13fce7b0       *          expire date: 2015-09-20 22:55:47 GMT
0x7f759f0ad700   CURLIO      0x13fce7b0       *          issuer: C=US; ST=California; L=San Francisco; O=Linden Lab, Inc.; OU=Linden Lab Certificate Authority; CN=Linden Lab Certificate Authority; emailAddress=ca@lindenlab.com
0x7f759f0ad700   CURLIO      0x13fce7b0       *          SSL certificate verify ok.
0x7f759f0ad700   CURLIO      0x13fce7b0       * STATE: PROTOCONNECT => DO handle 0x7f758d62d810; (connection #2)
0x7f759f0ad700   CURLIO      0x13fce7b0       H< POST /cap/d67d4540-4504-b3d1-1d26-112010e88bd8 HTTP/1.1\r\nHost: sim10480.agni.lindenlab.com:12043\r\nAccept: */*\r\nAccept-Encoding: deflate, gzip\r\nContent-Type: application/llsd+xml\r\nX-SecondLife-UDP-Listen-Port: 32837\r\nConnection: keep-alive\r\nKeep-alive: 300\r\nContent-Length: 333\r\n\r\n
0x7f759f0ad700   CURLIO      0x13fce7b0       * STATE: DO => DO_DONE handle 0x7f758d62d810; (connection #2)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 0)	<=== THIS IS NEW: total to upload: 333 bytes, total uploaded: 0 bytes.
0x7f759f0ad700   CURLIO      0x13fce7b0       * STATE: DO_DONE => WAITPERFORM handle 0x7f758d62d810; (connection #2)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 0)
0x7f759f0ad700   CURLIO      0x13fce7b0       * STATE: WAITPERFORM => PERFORM handle 0x7f758d62d810; (connection #2)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 0)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 0)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 0)
0x7f759f0ad700   CURLTR      :       curl_easy_getinfo((CURL*)0x13fcf320, CURLINFO_PRIVATE, 0x7f759f0abdb0) = CURLE_OK
0x7f759f0ad700   CURL        :       Entering MultiHandle::socket_callback((CURL*)0x13fcf320, 46, CURL_POLL_INOUT, 0x7f758c001508, 0x7f758c2ce4e0) [CURLINFO_PRIVATE = 0x13fce7b0]
0x7f759f0ad700   CURL        :         CurlSocketInfo::set_action(CURL_POLL_IN --> CURL_POLL_INOUT) [0x13fce7b0]	<=== WATING FOR WRITING BUT ALREADY WAITING FOR INPUT!
0x7f759f0ad700   CURL        0x13fce7b0          reset_lowspeed: mLowSpeedClock = 138530973390; mStalled = -1
0x7f759f0ad700   CURLTR      :   <continued> {11}) = 0									<--- Returning from curl_multi_socket_action
0x7f759f0ad700   CURL        :   select(58, {17, 39, 46, 47, 48, 49, 50, 51, 52, 54}, {36, 46, 57}, NULL, timeout = 756 ms) = 5
0x7f759f0ad700   CURLTR      :   curl_multi_socket_action((CURLM*)0x7f758c002920, 46, CURL_CSELECT_OUT, <unfinished>	<=== SOCKET AVAILABLE FOR WRITING
0x7f759f0ad700   CURLIO      0x13fce7b0       * additional stuff not fine transfer.c:1037: 0 0
0x7f759f0ad700   CURLIO      0x13fce7b0       D< 333 bytes: "<llsd><map><key>folders</key><array><map><key>fetch_folders</key>...etc"	<=== WRITING *ALL* DATA
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 333)	<=== THIS IS NEW, DETECT END OF UPLOAD
0x7f759f0ad700   CURL        0x13fce7b0          upload_finished: mStalled set to Time_10ms (138530973390) + 6000 (60 seconds)
0x7f759f0ad700   CURL        :       Entering BufferedCurlEasyRequest::curlProgressCallback(0x13fce7b0, 0, 0, 333, 333)
0x7f759f0ad700   CURL        :   select(58, {17, 39, 46, 47, 50, 52, 54}, {36, 46, 57}, NULL, timeout = 0 ms) = 8
0x7f759f0ad700   CURLTR      :   curl_multi_socket_action((CURLM*)0x7f758c002920, 46, CURL_CSELECT_IN|CURL_CSELECT_OUT, <unfinished>
0x7f759f0ad700   CURLIO      0x13fce7b0       * HTTP 1.1 or later with persistent connection, pipelining supported
0x7f759f0ad700   CURLIO      0x13fce7b0       H> HTTP/1.1 200 OK\r\n

...and the server already replies without a call to MultiHandle::socket_callback between
writing and reading, because the socket was still (already) waiting for input anyway
(since it was waiting for the SSL/TLS handshake before in this case, but
it also happens when the data has to be written in more than one writes).

Using the progress callback however, we are able to detect the end of the upload right
after writing, anyway.
2013-11-24 19:13:17 +01:00
Aleric Inglewood
6714d3585d Improve CURLTR debug output.
It was very confusing that only *after* a call to a libcurl function
it was written to debug output that it was called.
Now it prints it before calling it, and when that leads to additional
debug output while inside the function, it prints that before giving
the return value.

For example:

0x7f529ea15700   CURLTR      :   curl_multi_socket_action((CURLM*)0x7f528c002920, CURL_SOCKET_TIMEOUT, 0, <unfinished>
0x7f529ea15700   CURLIO      0xea8ef30       * About to connect() to login.agni.lindenlab.com port 443 (#0)
0x7f529ea15700   CURLIO      0xea8ef30       *   Trying 216.82.16.97...
0x7f529ea15700   CURLIO      0xea8ef30       * 0xe3240e0 is at send pipe head!
0x7f529ea15700   CURLIO      0xea8ef30       * STATE: CONNECT => WAITCONNECT handle 0x7f528c001df0; (connection #0)
0x7f529ea15700   CURLTR      :       curl_easy_getinfo((CURL*)0xe3240e0, CURLINFO_PRIVATE, 0x7f529ea13db0) = CURLE_OK
0x7f529ea15700   CURL        :       Entering MultiHandle::socket_callback((CURL*)0xe3240e0, 36, CURL_POLL_OUT, 0x7f528c001508, 0) [CURLINFO_PRIVATE = 0xea8ef30]
0x7f529ea15700   CURLTR      :         curl_easy_getinfo((CURL*)0xe3240e0, CURLINFO_PRIVATE, 0x7f529ea13d58) = CURLE_OK
0x7f529ea15700   CURLTR      :         curl_multi_assign((CURLM*)0x7f528c002920, 36, 0x7f528c031680) = 0
0x7f529ea15700   CURL        :         CurlSocketInfo::set_action(CURL_POLL_NONE --> CURL_POLL_OUT) [0xea8ef30]
0x7f529ea15700   CURL        :       MultiHandle::timer_callback(): timeout set to 1 ms.
0x7f529ea15700   CURLTR      :   <continued> {1}) = 0

Unfortunately, this breaks defining DEBUG_CURLIO without using libcwd,
but that was unusable already anyway (even though it compiled).
2013-11-24 18:24:09 +01:00
Inusaito Sayori
44d1b4f1fb A start on the group's feature request to have indication of mute in friends list
We may need to trick the friends list into refreshing when someone is muted to complete this feature...
probably need mutelist callbacks if those exist
2013-11-22 20:21:47 -05:00
Inusaito Sayori
7d98cf1891 [LLIMMgr/LLIMPanel] Woops, only allow invites to Adhocs!! 2013-11-22 18:41:34 -05:00
Inusaito Sayori
2d66022727 [LLIMMgr/LLIMPanel] Clean up the now redundant usage of isInviteAllowed() 2013-11-22 18:18:05 -05:00
Inusaito Sayori
15fefc231b [LLIMMgr/LLIMPanel] isInviteAllowed should return based on mSessionType, not on mDialog. 2013-11-22 18:09:13 -05:00
Inusaito Sayori
53969d05d8 [LLIMMgr/LLIMPanel] Always allow Drag and Drop sharing of any inventory regardless of mDialog so long as mSessionType is P2P_SESSION 2013-11-22 18:00:58 -05:00
Inusaito Sayori
209e64b136 Merge llfloatertools.cpp with upstream to fix MATBUG-240
MATBUG-240: Unable to change media settings for an already applied media texture unless media texture is removed and reapplied.
2013-11-22 17:35:11 -05:00
Inusaito Sayori
f3f1727b49 Actually fix SV-1226
It happened because we filtered mFromName which started out as from_name, and inconsistently used the two after that...
This change switches to just using mFromName after that point..
SV-1226 #close Fixed it~
2013-11-22 00:49:47 -05:00
Inusaito Sayori
15dbce00ee Prevent any RLVa filtering of music information as mentioned in SV-1226 2013-11-21 23:09:13 -05:00
Aleric Inglewood
2a7b96fab2 Increase connect time outs for SSL/TLS connections to 30 seconds.
On (very) slow machines this might improve the experience.
This only has effect on Second Life, since that's currently the only
grid that uses https for capabilities (all of them, except GetMesh,
GetMesh2 and GetTexture).

When linking the viewer with libmemleak, which significantly slows
down calls to malloc (and calloc, realloc, new, memalign and so on)
and free (delete), I no longer could download my inventory.
With this patch this was solved. The reason was that completing
the SSL/TLS handshake took more than 10 seconds (15 to 20).
2013-11-21 19:47:25 +01:00
Aleric Inglewood
1aa0a9be67 Minor bug fix. 2013-11-21 01:28:34 +01:00
Aleric Inglewood
53e26d4909 Compile fix for -DDEBUG_CURLIO
Since that fakes the libcwd macros, this is needed to compile
the recent change that allows to only turn on debugging output
for certain statemachine objects when DEBUG_CURLIO is defined,
but libcwd is not used (CWDEBUG is undefined).
2013-11-21 01:28:16 +01:00
Aleric Inglewood
bdef8dc185 Merge remote-tracking branch 'singu/master' 2013-11-20 15:13:25 +01:00
Siana Gearz
9c29488044 If the text is too skinny to render, don't crash 2013-11-20 10:33:15 +01:00
Siana Gearz
060628397b Merge branch 'master' of https://github.com/Shyotl/SingularityViewer 2013-11-20 05:50:03 +01:00
Siana Gearz
f23dc157be Prevent accidental modification of vital stock grid 2013-11-20 05:49:43 +01:00
Shyotl
3715b7439d Doer fonts fast(er)! (better batching for font glyph rendering) 2013-11-19 19:40:29 -06:00
Siana Gearz
cde5b23353 Limit avatar physics to 20-40 simulation steps per second to avoid wonky integration 2013-11-20 02:22:16 +01:00
Siana Gearz
07736106b1 Suppress asserts in fallback font loading 2013-11-20 02:20:58 +01:00
Siana Gearz
01744730a1 Merge branch 'master' of https://github.com/AlericInglewood/SingularityViewer 2013-11-20 01:11:13 +01:00