diff options
Diffstat (limited to 'src/uzbl-core.c')
-rw-r--r-- | src/uzbl-core.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/uzbl-core.c b/src/uzbl-core.c index 26b3dba..b2e7a7a 100644 --- a/src/uzbl-core.c +++ b/src/uzbl-core.c @@ -165,6 +165,20 @@ create_var_to_name_hash() { /* --- UTILITY FUNCTIONS --- */ +enum exp_type { + EXP_ERR, EXP_SIMPLE_VAR, EXP_BRACED_VAR, EXP_EXPR, EXP_JS, EXP_ESCAPE +}; + +enum exp_type +get_exp_type(const gchar *s) { + switch(*(s+1)) { + case '(': return EXP_EXPR; + case '{': return EXP_BRACED_VAR; + case '<': return EXP_JS; + case '[': return EXP_ESCAPE; + default: return EXP_SIMPLE_VAR; + } +} /* * recurse == 1: don't expand '@(command)@' @@ -608,6 +622,9 @@ print(WebKitWebView *page, GArray *argv, GString *result) { (void) page; (void) result; gchar* buf; + if(!result) + return; + buf = expand(argv_idx(argv, 0), 0); g_string_assign(result, buf); g_free(buf); |