summaryrefslogtreecommitdiff
path: root/src/lexer.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lexer.c')
-rw-r--r--src/lexer.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lexer.c b/src/lexer.c
index 176c773..10bfe36 100644
--- a/src/lexer.c
+++ b/src/lexer.c
@@ -30,12 +30,13 @@ l_check_if_function(LexerState* state)
static gboolean
l_check_if_number(LexerState* state)
{
- MPNumber tmp;
+ MPNumber tmp = mp_new();
int count = 0;
gchar* text = pl_get_marked_substring(state->prelexer);
if(mp_set_from_string(text, state->parent->options->base, &tmp) == 0)
{
free(text);
+ mp_clear(&tmp);
return TRUE;
}
else
@@ -46,6 +47,7 @@ l_check_if_number(LexerState* state)
if(mp_set_from_string(text, state->parent->options->base, &tmp) == 0)
{
free(text);
+ mp_clear(&tmp);
return TRUE;
}
free(text);
@@ -57,6 +59,7 @@ l_check_if_number(LexerState* state)
while(count--)
pl_get_next_token (state->prelexer);
free(text);
+ mp_clear(&tmp);
return FALSE;
}
}