--- a/ChangeLog Sat Nov 23 13:50:47 2002 -0500
+++ b/ChangeLog Thu Dec 05 15:37:55 2002 -0500
@@ -2,6 +2,8 @@
* Yahoo i18n fix (Thanks Ethan Blanton).
+ * Fixed a bug in escaping saved passwords (Thanks version 0.59.6 (11/07/2002):
* Fixed a segfault introduced in 0.59.5 when gtk
--- a/src/gaimrc.c Sat Nov 23 13:50:47 2002 -0500
+++ b/src/gaimrc.c Thu Dec 05 15:37:55 2002 -0500
@@ -74,14 +74,13 @@
- /* if ((*c < 'a' || *c > 'z') && *c != '_') { */
if ((*c < 'a' || *c > 'z') && *c != '_' && (*c < 'A' || *c > 'Z')) {
@@ -94,29 +93,38 @@
- if (*(c - 1) == '\\') {
- p->value[curval][vallen - 1] = *c;
- p->value[curval][vallen - 1] = 0;
+ /* if we have a \ take the char after it literally.. */ + p->value[curval][vallen] = *c; + } else if (*c == '}') { + /* } that isn't escaped should end this chunk of data, and + * should have a space before it.. */ + p->value[curval][vallen - 1] = 0; p->value[curval][vallen] = *c;
+ /* i really don't think this if ever succeeds, but i'm + * not brave enough to take it out... */ p->value[curval][vallen - 1] = *c;
+ /* { that isn't escaped should signify the start of a + * piece of data and should have a space after it.. */