summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-12-07SL-18776 Avatar picker search not updated on http errorAndrey Kleshchev
2022-12-07Fix failures to update the TP states while the viewer is minimized.Henri Beauchamp
This is a fix for: https://jira.secondlife.com/browse/BUG-230616
2022-12-06DRTVWR-575: Try to avoid comparison warnings in llclamp()Nat Goodspeed
2022-12-06SL-18330: Adapt LLSDSerialize and tests to llssize max_bytes params.Nat Goodspeed
2022-12-06DRTVWR-575: Defend unescape_string() against empty line.Nat Goodspeed
The unsigned index arithmetic was problematic in that case.
2022-12-06DRTVWR-575: Update a few more int lengths in llsdserialize.{h,cpp}.Nat Goodspeed
2022-12-06DRTVWR-575: Use llssize (signed size_t) for max_bytes parameters.Nat Goodspeed
Since LLSDSerialize::SIZE_UNLIMITED is negative, passing that through unsigned size_t parameters could result in peculiar behavior.
2022-12-06DRTVWR-575: Introduce LLKeyBind::endNonEmpty()Nat Goodspeed
and use it to replace dubious loops in asLLSD() and trimEmpty().
2022-12-06DRTVWR-575: Keep BufferArray::findBlock() in int domain.Nat Goodspeed
2022-12-06SL-18778 Crash at LLVoiceClient::removeObserver (#25)akleshchev
2022-12-03SL-18486 Complete Avatars floater is blank.Maxim Nikolenko
2022-12-02SL-18330: Test Python llsd.parse() both from bytes and from stream.Nat Goodspeed
2022-12-02SL-18330: Fix new C++ <-> Python LLSD compatibility tests.Nat Goodspeed
When sending multiple LEAP packets in the same file (for testing convenience), use a length prefix instead of delimiting with '\n'. Now that we allow a serialization format that includes an LLSD format header (e.g. "<?llsd/binary?>"), '\n' is part of the packet content. But in fact, testing binary LLSD means we can't pick any delimiter guaranteed not to appear in the packet content. Using a length prefix also lets us pass a specific max_bytes to the subject C++ LLSD parser. Make llleap_test.cpp use new freestanding Python llsd package when available. Update Python-side LEAP protocol code to work directly with encoded bytes stream, avoiding bytes<->str encoding and decoding, which breaks binary LLSD. Make LLSDSerialize::deserialize() recognize LLSD format header case- insensitively. Python emits and checks for "llsd/binary", while LLSDSerialize emits and checks for "LLSD/Binary". Once any of the headers is recognized, pass corrected max_bytes to the specific parser. Make deserialize() more careful about the no-header case: preserve '\n' in content. Introduce debugging code (disabled) because it's a little tricky to recreate. Revert LLLeap child process stdout parser from LLSDSerialize::deserialize() to the specific LLSDNotationParser(), as at present: the generic parser fails one of LLLeap's integration tests for reasons that remain mysterious.
2022-12-02SL-18734 certain links are not displayed appropriatelyMaxim Nikolenko
2022-12-01SL-18243 Add wear and unwear buttons on line items in Outfits floaterMaxim Nikolenko
2022-11-29SL-18330: WIP: Send LLLeap to child as binary LLSD; generic parser.Nat Goodspeed
Since parsing binary LLSD is faster than parsing notation LLSD, send data from the viewer to the LEAP plugin child process's stdin in binary instead of notation. Similarly, instead of parsing the child process's stdout using specifically a notation parser, use the generic LLSDSerialize::deserialize() LLSD parser. Add more LLSDSerialize Python compatibility tests.
2022-11-28SL-18718 Crash at LLEventPump::listen and connection issuesAndrey Kleshchev
Cleaner reinit and termination.
2022-11-25SL-18101 MoaP Reset button should reset the Current URLAndrey Kleshchev
2022-11-25SL-18713 fix crash in handleCompositionMessage (#12)Maxim Nikolenko
2022-11-23SL-18330: LLSDSerialize::deserialize() w/o hdr uses XML or notationNat Goodspeed
Absent a header from LLSDSerialize::serialize(), make deserialize() distinguish between XML or notation by recognizing an initial '<'.
2022-11-23Merge branch 'main' into DRTVWR-573-maint-RAndrey Lihatskiy
2022-11-23Merge branch 'main' into DRTVWR-570-maint-QAndrey Lihatskiy
2022-11-23Merge branch 'main' into DRTVWR-565-maint-PAndrey Lihatskiy
2022-11-22SL-18330: Make LLSDSerialize::deserialize() default to notation.Nat Goodspeed
LLSDSerialize::serialize() emits a header string, e.g. "<? llsd/notation ?>" for notation format. Until now, LLSDSerialize::deserialize() has required that header to properly decode the input stream. But none of LLSDBinaryFormatter, LLSDXMLFormatter or LLSDNotationFormatter emit that header themselves. Nor do any of the Python llsd.format_binary(), format_xml() or format_notation() functions. Until now, you could not use LLSD::deserialize() to parse an arbitrary-format LLSD stream serialized by anything but LLSDSerialize::serialize(). Change LLSDSerialize::deserialize() so that if no header is recognized, instead of failing, it attempts to parse as notation. Add tests to exercise this case. The tricky part about this processing is that deserialize() necessarily reads some number of bytes from the input stream first, to try to recognize the header. If it fails to do so, it must prepend the bytes it has already read to the rest of the input stream since they're probably the beginning of the serialized data. To support this use case, introduce cat_streambuf, a std::streambuf subclass that (virtually) concatenates other std::streambuf instances. When read by a std::istream, the sequence of underlying std::streambufs appears to the consumer as a single continuous stream.
2022-11-22Merge branch 'DRTVWR-568' into DRTVWR-539Mnikolenko Productengine
2022-11-22SL-18219 Crash getting and sending render info on exitAndrey Kleshchev
There might be other causes for sendRenderInfoToRegion and getRenderInfoFromRegion, crashing, but in some cases viewer was shutting down
2022-11-22Merge branch 'master' into DRTVWR-539Mnikolenko Productengine
2022-11-21Merge pull request #4 from secondlife/signal/staleSignal Linden
Close stale PRs
2022-11-21Fix a thread safety issue in the GL image worker.Henri Beauchamp
LLViewerTexture::mNeedsCreateTexture needs to be an attomic bool since it is written both in the main thread and in the GL image worker thread. We can now enable threaded bump maps creation as a result of this fix. I have read the CLA Document and I hereby sign the CLA
2022-11-21Merge pull request #6 from sldevel/masterRunitaiLinden
Fix a thread safety issue in the GL image worker.
2022-11-22SL-18689 Crash at LLTabContainer::selectNextTab()Andrey Kleshchev
FPE_NOOP at "idx = (idx + 1 ) % (S32)mTabList.size();"
2022-11-22SL-18565 Prevent texture fetch crash on second login attemptAndrey Kleshchev
2022-11-21Merge pull request #8 from Ansariel/masterSignal Linden
Update message template URL after move to GitHub
2022-11-21Merge branch 'master' into DRTVWR-570-maint-QAndrey Lihatskiy
2022-11-21Merge branch 'master' into DRTVWR-573-maint-RAndrey Lihatskiy
2022-11-21Update default URL for message template in template_verifier.py as wellAnsariel
2022-11-21SL-18218: Switch canonical_repo to GitHub URLBennett Goble
2022-11-21Update message template URL after move to GitHubAnsariel
2022-11-21Merge branch master into DRTVWR-565-maint-PAndrey Kleshchev
2022-11-21SL-18565 restoreGL should re-add bumpmapsAndrey Kleshchev
2022-11-19Fix a thread safety issue in the GL image worker.Henri Beauchamp
LLViewerTexture::mNeedsCreateTexture needs to be an attomic bool since it is written both in the main thread and in the GL image worker thread. We can now enable threaded bump maps creation as a result of this fix. I have read the CLA Document and I hereby sign the CLA
2022-11-19restore correct glh_linear versionMnikolenko Productengine
2022-11-19SL-18670 change limits of RenderVolumeLODFactor in Preference similar to ↵Mnikolenko Productengine
Distance detail ctrl; update slider text correctly
2022-11-19SL-18675 Display render time as 1 even it's actually lessMnikolenko Productengine
2022-11-18Merge pull request #1 from FelixWolf/CZ-1Signal Linden
Various repo fixes
2022-11-18Renamed LICENSE.txt to follow naming scheme of other reposKyler Eastridge
2022-11-18Merge pull request #3 from secondlife/signal/labelSignal Linden
Add automatic PR labels
2022-11-18Merge pull request #2 from secondlife/signal/claSignal Linden
Add CLA bot
2022-11-18Mark PRs as stale after 60 days, close them automatically if no responseBennett Goble
after 7 days.
2022-11-18Add automatic PR labelsBennett Goble