From: James Turner Date: Tue, 5 Nov 2013 23:46:19 +0000 (-0800) Subject: Nasal: accept strings-containing-ints as X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=f0011bc759b2c0bf70e1628ce5eb9c26a27b83c8;p=flightgear.git Nasal: accept strings-containing-ints as arguments to leg altitude/speed constraints. --- diff --git a/src/Scripting/NasalPositioned.cxx b/src/Scripting/NasalPositioned.cxx index 25d28bb40..11ca31bf7 100644 --- a/src/Scripting/NasalPositioned.cxx +++ b/src/Scripting/NasalPositioned.cxx @@ -2192,7 +2192,15 @@ static naRef f_leg_setSpeed(naContext c, naRef me, int argc, naRef* args) } RouteRestriction rr = routeRestrictionFromString(naStr_data(args[1])); - leg->setSpeed(rr, args[0].num); + if (naIsNum(args[0])) { + leg->setSpeed(rr, args[0].num); + } else if (naIsString(args[0])) { + leg->setSpeed(rr, simgear::strutils::to_int(naStr_data(args[0]))); + } else { + naRuntimeError(c, "bad speed value for leg.setSpeed"); + } + + return naNil(); } @@ -2208,7 +2216,14 @@ static naRef f_leg_setAltitude(naContext c, naRef me, int argc, naRef* args) } RouteRestriction rr = routeRestrictionFromString(naStr_data(args[1])); - leg->setAltitude(rr, args[0].num); + if (naIsNum(args[0])) { + leg->setAltitude(rr, args[0].num); + } else if (naIsString(args[0])) { + leg->setAltitude(rr, simgear::strutils::to_int(naStr_data(args[0]))); + } else { + naRuntimeError(c, "bad value for setAltitude"); + } + return naNil(); }