The mysterious vanishing "My Suitcase" explained

26 views
Skip to first unread message

Beq Janus

unread,
Nov 18, 2020, 9:27:55 PM11/18/20
to opensource-dev
Hi all,
Not technically the right forum for this (as this is an OpenSim thing) however, there's been an issue with 32-bit viewers not showing the HyperGrid2.0 My Suitcase folder since about 2016  and the release of OpenSim 0.8.2

I've found the cause of the issue, some of you may well have fixed it in the past, but in case you have not here's the issue. 

As of 0.8.2 the My Suitcase folder was assigned Folder Type 100, this was I presume done with good intentions of keeping well clear of any existing use. However, it overlooked the inventory filters in V3 based viewers. 

The code in question is at the end of  the checkFolder() function in llinventoryfilter.cpp

        if (cat_type != LLFolderType::FT_NONE && (1LL << cat_type & mFilterOps.mFilterCategoryTypes) == U64(0))
            return false;

when cat_type > 64 behaviour is undefined. 64-bit intel esp those using VS, got lucky and it happened to resolve to 100 modulo 64 (bit 36) which passes. On 32-bit it resolves to 0 and thus fails and is not shown. 

The quickest  "fix" that avoids complications is probably to just have an explicit check before the filter mask is applied. I am going to apply that change to Firestorm. It won't be UI controlled for now but will at least always be there. 

There's a mantis for OpenSim to track this. http://opensimulator.org/mantis/view.php?id=8813

best regards
Beq
Reply all
Reply to author
Forward
0 new messages