mirror of
https://github.com/QB64Official/qb64.git
synced 2024-07-07 21:25:14 +00:00
Tries harder to prevent invalid values for watchpoints.
This commit is contained in:
parent
3be8a806f8
commit
cb050b2c0b
|
@ -8464,21 +8464,46 @@ FUNCTION idevariablewatchbox$(currentScope$, filter$, selectVar, returnAction)
|
||||||
MID$(v$, 1, 2) = op2$ + "="
|
MID$(v$, 1, 2) = op2$ + "="
|
||||||
GOTO StartWatchPointEval
|
GOTO StartWatchPointEval
|
||||||
END IF
|
END IF
|
||||||
|
op$ = "="
|
||||||
|
actualValue$ = _TRIM$(MID$(v$, 2))
|
||||||
CASE ">"
|
CASE ">"
|
||||||
IF op2$ = "<" OR op2$ = ">" THEN
|
IF op2$ = "<" OR op2$ = ">" THEN
|
||||||
result = idemessagebox(dlgTitle$, "Invalid expression.\nYou can use =, <>, >, >=, < and <=", "#OK")
|
result = idemessagebox(dlgTitle$, "Invalid expression.\nYou can use =, <>, >, >=, <, <=, and a literal value", "#OK")
|
||||||
_KEYCLEAR
|
_KEYCLEAR
|
||||||
GOTO getNewValueInput
|
GOTO getNewValueInput
|
||||||
END IF
|
END IF
|
||||||
|
IF op2$ = "=" THEN
|
||||||
|
op$ = ">="
|
||||||
|
actualValue$ = _TRIM$(MID$(v$, 3))
|
||||||
|
ELSE
|
||||||
|
op$ = ">"
|
||||||
|
actualValue$ = _TRIM$(MID$(v$, 2))
|
||||||
|
END IF
|
||||||
CASE "<"
|
CASE "<"
|
||||||
|
IF op2$ = ">" OR op2$ = "=" THEN
|
||||||
|
op$ = "<" + op2$
|
||||||
|
actualValue$ = _TRIM$(MID$(v$, 3))
|
||||||
|
ELSE
|
||||||
|
op$ = "<"
|
||||||
|
actualValue$ = _TRIM$(MID$(v$, 2))
|
||||||
|
END IF
|
||||||
CASE ELSE
|
CASE ELSE
|
||||||
result = idemessagebox(dlgTitle$, "Invalid expression.\nYou can use =, <>, >, >=, < and <=", "#OK")
|
result = idemessagebox(dlgTitle$, "Invalid expression.\nYou can use =, <>, >, >=, <, <=, and a literal value", "#OK")
|
||||||
_KEYCLEAR
|
_KEYCLEAR
|
||||||
GOTO getNewValueInput
|
GOTO getNewValueInput
|
||||||
END SELECT
|
END SELECT
|
||||||
END IF
|
END IF
|
||||||
END IF
|
END IF
|
||||||
|
|
||||||
|
IF INSTR(varType$, "STRING") = 0 THEN
|
||||||
|
v$ = op$ + actualValue$
|
||||||
|
IF v$ <> op$ + LTRIM$(STR$(VAL(actualValue$))) THEN
|
||||||
|
result = idemessagebox(dlgTitle$, "Invalid expression.\nYou can use =, <>, >, >=, <, <=, and a literal value\n(scientific notation not allowed).", "#OK")
|
||||||
|
_KEYCLEAR
|
||||||
|
GOTO getNewValueInput
|
||||||
|
END IF
|
||||||
|
END IF
|
||||||
|
|
||||||
cmd$ = ""
|
cmd$ = ""
|
||||||
cmd$ = cmd$ + MKL$(tempIndex&)
|
cmd$ = cmd$ + MKL$(tempIndex&)
|
||||||
cmd$ = cmd$ + _MK$(_BYTE, usedVariableList(tempIndex&).isarray)
|
cmd$ = cmd$ + _MK$(_BYTE, usedVariableList(tempIndex&).isarray)
|
||||||
|
|
Loading…
Reference in a new issue