prevent 'set var %undefined' from stomping on env

main
rhetorica 2025-12-13 21:30:55 -08:00
parent 463a398a7a
commit 211edbe4f0
1 changed files with 9 additions and 1 deletions

View File

@ -424,7 +424,13 @@ integer process_input(key outs, key handle, key user, string cml, integer in_scr
if(value == "%key") { if(value == "%key") {
value = llGenerateKey(); value = llGenerateKey();
} else if(value == "%undefined") { } else if(value == "%undefined") {
value = JSON_DELETE; if(getdb("env", gets(cargv, 1)) == JSON_INVALID) {
jump do_nothing;
//echo("Doesn't exist, not deleting again");
} else {
value = JSON_DELETE;
//echo("Deleting " + gets(cargv, 1));
}
} else if(value == "%empty") { } else if(value == "%empty") {
value = ""; value = "";
} else if(sv == "%keys") { } else if(sv == "%keys") {
@ -466,6 +472,8 @@ integer process_input(key outs, key handle, key user, string cml, integer in_scr
} }
setdb("env", gets(cargv, 1), value); setdb("env", gets(cargv, 1), value);
@do_nothing;
} else { } else {
error_msg = "[_exec] not enough arguments: set"; error_msg = "[_exec] not enough arguments: set";
} }