Introduction
Introduction Statistics Contact Development Disclaimer Help
webext: Free JavaScript objects - surf - surf browser, a WebKit based browser
git clone git://git.suckless.org/surf
Log
Files
Refs
README
LICENSE
---
commit d5f45bffe0c3a54344f61662b4b643e168539251
parent b48be75179e5e2839b60f713111a1789b868cede
Author: Quentin Rameau <[email protected]>
Date: Sun, 24 Mar 2024 15:21:59 +0100
webext: Free JavaScript objects
Webkit documentation says JavaScript objects refcount is always
increased, and has to be released always.
Diffstat:
M webext-surf.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/webext-surf.c b/webext-surf.c
@@ -25,6 +25,7 @@ readsock(GIOChannel *s, GIOCondition c, gpointer unused)
static char js[48], msg[MSGBUFSZ];
WebKitWebPage *page;
JSCContext *jsc;
+ JSCValue *jsv;
GError *gerr = NULL;
gsize msgsz;
@@ -48,6 +49,7 @@ readsock(GIOChannel *s, GIOCondition c, gpointer unused)
return TRUE;
jsc = webkit_frame_get_js_context(webkit_web_page_get_main_frame(page)…
+ jsv = NULL;
switch (msg[1]) {
case 'h':
@@ -56,7 +58,7 @@ readsock(GIOChannel *s, GIOCondition c, gpointer unused)
snprintf(js, sizeof(js),
"window.scrollBy(window.innerWidth/100*%hhd,0);",
msg[2]);
- jsc_context_evaluate(jsc, js, -1);
+ jsv = jsc_context_evaluate(jsc, js, -1);
break;
case 'v':
if (msgsz != 3)
@@ -64,10 +66,14 @@ readsock(GIOChannel *s, GIOCondition c, gpointer unused)
snprintf(js, sizeof(js),
"window.scrollBy(0,window.innerHeight/100*%hhd);",
msg[2]);
- jsc_context_evaluate(jsc, js, -1);
+ jsv = jsc_context_evaluate(jsc, js, -1);
break;
}
+ g_object_unref(jsc);
+ if (jsv)
+ g_object_unref(jsv);
+
return TRUE;
}
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.