# HG changeset patch # User Stu Tomlinson # Date 1195749176 0 # Node ID 87387eac434890b4098adf3e5c118340c1056bd2 # Parent 0e4549c09e6448b3f7a8fa3a12252e3d1601a878 Fix a bug in purple_str_to_time() that could cause it to try reading past the end of the input string diff -r 0e4549c09e64 -r 87387eac4348 libpurple/util.c --- a/libpurple/util.c Thu Nov 22 02:56:20 2007 +0000 +++ b/libpurple/util.c Thu Nov 22 16:32:56 2007 +0000 @@ -817,8 +817,11 @@ t->tm_isdst = -1; - if (*c == '.' && *(c+1) >= '0' && *(c+1) <= '9') /* dealing with precision we don't care about */ - c += 4; + if (*c == '.') { + do { + c++; + } while (*c >= '0' && *c <= '9'); /* dealing with precision we don't care about */ + } if (*c == '+') offset_positive = TRUE; if (((*c == '+' || *c == '-') && (c = c + 1)) &&