summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
6beaf32)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/branches/efreet-1.7@79549
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
#endif
#include <unistd.h>
#endif
#include <unistd.h>
#ifdef _WIN32
# include <winsock2.h>
#ifdef _WIN32
# include <winsock2.h>
EINA_ITERATOR_FOREACH(it, line)
{
const char *eq, *end;
EINA_ITERATOR_FOREACH(it, line)
{
const char *eq, *end;
+ Eina_Bool quote = EINA_FALSE;
if (line->length < 3) continue;
if (line->start[0] == '#') continue;
if (line->length < 3) continue;
if (line->start[0] == '#') continue;
if (!eq) continue;
if (strncmp(key, line->start, eq - line->start)) continue;
if (++eq >= line->end) continue;
if (!eq) continue;
if (strncmp(key, line->start, eq - line->start)) continue;
if (++eq >= line->end) continue;
- if (*eq != '"') continue;
- if (++eq >= line->end) continue;
- end = memchr(eq, '"', line->end - eq);
+ if (*eq == '"')
+ {
+ quote = EINA_TRUE;
+ if (++eq >= line->end) continue;
+ }
+ if (quote)
+ end = memchr(eq, '"', line->end - eq);
+ else
+ {
+ end = line->end;
+ while (isspace(*end)) end--;
+ }
if (!end) continue;
ret = alloca(end - eq + 1);
memcpy(ret, eq, end - eq);
if (!end) continue;
ret = alloca(end - eq + 1);
memcpy(ret, eq, end - eq);