#1 Fix read.location bug

Samengevoegd
kjhammerle heeft 1 commits samengevoegd van seyfahni/master naar kjhammerle/master 7 jaren geleden

Fixed inconsistency with read.item to throw recoverable IllegalStringLocationException instead of CodeHaltException.

Code like

@is_location_string // (String location)
push(size, location, result);
popArg();

location = popArg();

try {
    read.location(location);
    result = true;
} catch {
    result = false;
}

pushArg(result);

pop("size", "location", "result");
return();

will always return true or halt execution without this fix.

On the other hand, the same code but changed to handle items does work as expected.

@is_item_string // (String item)
push(size, item, result);
popArg();

item = popArg();

try {
    read.item(item);
    result = true;
} catch {
    result = false;
}

pushArg(result);

pop("size", "item", "result");
return();

IllegalStringLocationException should also be renamed to IllegalLocationStringException for further consistency.

Fixed inconsistency with read.item to throw recoverable IllegalStringLocationException instead of CodeHaltException. Code like @is_location_string // (String location) push(size, location, result); popArg(); location = popArg(); try { read.location(location); result = true; } catch { result = false; } pushArg(result); pop("size", "location", "result"); return(); will always return true or halt execution without this fix. On the other hand, the same code but changed to handle items does work as expected. @is_item_string // (String item) push(size, item, result); popArg(); item = popArg(); try { read.item(item); result = true; } catch { result = false; } pushArg(result); pop("size", "item", "result"); return(); IllegalStringLocationException should also be renamed to IllegalLocationStringException for further consistency.
Dit pull-request is samengevoegd!
Sign in to join this conversation.
Geen label
Geen mijlpaal
Geen verantwoordelijke
1 deelnemers
Laden...
Annuleren
Opslaan
Er is nog geen inhoud.