diff --git a/modules/libpref/src/prefapi.c b/modules/libpref/src/prefapi.c index 78cf9fd5152..1e9dc41bea5 100644 --- a/modules/libpref/src/prefapi.c +++ b/modules/libpref/src/prefapi.c @@ -607,6 +607,10 @@ PREF_EvaluateConfigScript(const char * js_buffer, size_t length, if (c == '\n') break; } + + /* Free up gSavedLine to avoid MLK. */ + if (gSavedLine) + free(gSavedLine); gSavedLine = malloc(i+1); if (!gSavedLine) return JS_FALSE; diff --git a/modules/libpref/src/prefapi.cpp b/modules/libpref/src/prefapi.cpp index 78cf9fd5152..1e9dc41bea5 100644 --- a/modules/libpref/src/prefapi.cpp +++ b/modules/libpref/src/prefapi.cpp @@ -607,6 +607,10 @@ PREF_EvaluateConfigScript(const char * js_buffer, size_t length, if (c == '\n') break; } + + /* Free up gSavedLine to avoid MLK. */ + if (gSavedLine) + free(gSavedLine); gSavedLine = malloc(i+1); if (!gSavedLine) return JS_FALSE;