diff options
author | Alexey Yakovenko <wakeroid@gmail.com> | 2010-04-19 20:43:52 +0200 |
---|---|---|
committer | Alexey Yakovenko <wakeroid@gmail.com> | 2010-04-19 20:43:52 +0200 |
commit | ca1e12ca501be4054a9a608509ec744a70b32500 (patch) | |
tree | 08704814e1aba3f7c6ee6787e00f8d1bbb9d002c | |
parent | d10d940aa6a9c361c61d81ed378b46b8afb17198 (diff) |
added escaping of more XML special chars in notify plugin
-rw-r--r-- | plugins/notify/notify.c | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/plugins/notify/notify.c b/plugins/notify/notify.c index 866460be..e6c8e4b1 100644 --- a/plugins/notify/notify.c +++ b/plugins/notify/notify.c @@ -84,6 +84,38 @@ on_songchanged (DB_event_trackchange_t *ev, uintptr_t data) { dst += 5; src++; } + else if (*src == '<') { + if (end - dst < 4) { + break; + } + strcpy (dst, "<"); + dst += 4; + src++; + } + else if (*src == '>') { + if (end - dst < 4) { + break; + } + strcpy (dst, ">"); + dst += 4; + src++; + } + else if (*src == '\'') { + if (end - dst < 6) { + break; + } + strcpy (dst, "'"); + dst += 6; + src++; + } + else if (*src == '"') { + if (end - dst < 6) { + break; + } + strcpy (dst, """); + dst += 6; + src++; + } else { *dst++ = *src++; } @@ -128,10 +160,8 @@ on_songchanged (DB_event_trackchange_t *ev, uintptr_t data) { int serial; dbus_bool_t retval = dbus_connection_send(conn,msg,&serial); - printf ("retval: %d\n", retval); - //dbus_message_unref (msg); dbus_connection_flush (conn); - + dbus_message_unref (msg); } } return 0; |