aboutsummaryrefslogtreecommitdiff
path: root/src/uicmd.cc
diff options
context:
space:
mode:
authorJorge Arellano Cid <jcid@dillo.org>2011-07-29 20:19:08 -0400
committerJorge Arellano Cid <jcid@dillo.org>2011-07-29 20:19:08 -0400
commitb67fe8dc3de773aa251556003074ac0d721ed270 (patch)
tree7e69adfeaf14f6671a84d7e86e0840c0b9856b9e /src/uicmd.cc
parentd4e3caf23b1639103cba50c20282cc2e647e3771 (diff)
Added better error handling for the web search dialog (search_url)
Diffstat (limited to 'src/uicmd.cc')
-rw-r--r--src/uicmd.cc32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/uicmd.cc b/src/uicmd.cc
index 361e42b3..993dfb0b 100644
--- a/src/uicmd.cc
+++ b/src/uicmd.cc
@@ -786,22 +786,22 @@ static char *UIcmd_make_search_str(const char *str)
Dstr *ds = dStr_sized_new(128);
/* parse search_url into label and url */
- a_Misc_parse_search_url(src, &l, &u);
-
- for (c = u; *c; c++) {
- if (*c == '%')
- switch(*++c) {
- case 's':
- dStr_append(ds, keys); break;;
- case '%':
- dStr_append_c(ds, '%'); break;;
- case 0:
- MSG_WARN("search_url ends with '%%'\n"); c--; break;;
- default:
- MSG_WARN("illegal specifier '%%%c' in search_url\n", *c);
- }
- else
- dStr_append_c(ds, *c);
+ if (a_Misc_parse_search_url(src, &l, &u) == 0) {
+ for (c = u; *c; c++) {
+ if (*c == '%')
+ switch(*++c) {
+ case 's':
+ dStr_append(ds, keys); break;;
+ case '%':
+ dStr_append_c(ds, '%'); break;;
+ case 0:
+ MSG_WARN("search_url ends with '%%'\n"); c--; break;;
+ default:
+ MSG_WARN("illegal specifier '%%%c' in search_url\n", *c);
+ }
+ else
+ dStr_append_c(ds, *c);
+ }
}
dFree(keys);