The limit used to be 1024 bytes for llGetNotecardLine. Now that this server version has llGetNotecardLineSync, both the new function and llGetNotecardLine can return only 1023 bytes. I was relying on the 1024 byte maximum on several configuration notecards, so this certainly breaks a lot of stuff.
Minimal test script with a couple notecard asset UUIDs hardcoded:
string NC = "1e367899-7d34-7c9b-0af2-04614003c812"; // this notecard has 1 line, 1024 bytes
//string NC = "e95c3ffd-c732-8e17-0e43-03b1d5f98d7b"; // 2 lines: 1024+0 bytes (blank line)
//string NC = "f125782e-96e7-761d-59ab-2a010d07eec9"; // 2 lines: 512+512 bytes
default
{
state_entry() {
llGetNotecardLine(NC, 0);
}
dataserver(key id, string data) {
llOwnerSay("async: data length: " + (string)llStringLength(data));
llOwnerSay("async: data:");
llOwnerSay(data);
llSleep(0.1);
string data_sync = llGetNotecardLineSync(NC, 0);
llOwnerSay("sync: data length: " + (string)llStringLength(data_sync));
llOwnerSay("sync: data:");
llOwnerSay(data_sync);
}
}