Currently, both llGetNotecardLine() and llGetNotecardLineSync() return 1024 bytes of padded data if a multi-byte character is truncated. Due to this, it is impossible to use string length alone to determine if the return was truncated in all scenarios.
This why I was happy to find out that the new llFindNotecardTextSync() function returned byte count for both 'column' and 'length' outputs.
Sadly, despite this benefit, the original intent of those outputs was to be in character count so the function will soon be 'fixed' and the benefit mentioned above will be lost.
This is why I ask for a dedicated, synchronous function to let users know if their saved data will not be able to correctly be read by scripts.
string llGetNotecardLineBytes(string notecard_name);
returns NAK if the notecard is not cached or a count in bytes if it is cached.
Along with getting notecard line bytes, llFindNotecardTextSync(), before it will be fixed, can currently tell a user how many bytes are used/available in a notecard.
This benefit will soon be lost as well when llFindNotecardTextSync() is 'fixed'.
This is why I ask for a dedicated, synchronous function to let users know how much memory is used/available in their notecards.
string llGetNotecardBytesUsed(string notecard_name);
returns NAK if the notecard is not cached or a count in bytes if it is cached.
or
string llGetNotecardBytesAvailable(string notecard_name);
returns NAK if the notecard is not cached or a count in bytes if it is cached.
Thanks for any consideration.