diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2010-01-06 11:41:14 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2010-01-06 11:41:14 +0100 |
commit | 2cc10815edbfa202a34fb16c7c2d81d1814b0ee1 (patch) | |
tree | 169f3ee6d00130e57d7adf27e9d15211266482fd /plugin.c | |
parent | af494287cf131d152f1a925614ded6def491b3e0 (diff) | |
download | vdr-2cc10815edbfa202a34fb16c7c2d81d1814b0ee1.tar.gz vdr-2cc10815edbfa202a34fb16c7c2d81d1814b0ee1.tar.bz2 |
Fixed plugin arguments corruption with glibc 2.11 on x86_641.7.11
Diffstat (limited to 'plugin.c')
-rw-r--r-- | plugin.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: plugin.c 2.1 2009/04/05 10:21:20 kls Exp $ + * $Id: plugin.c 2.2 2010/01/06 11:36:46 kls Exp $ */ #include "plugin.h" @@ -172,15 +172,15 @@ cDll::~cDll() static char *SkipQuote(char *s) { char c = *s; - strcpy(s, s + 1); + memmove(s, s + 1, strlen(s)); while (*s && *s != c) { if (*s == '\\') - strcpy(s, s + 1); + memmove(s, s + 1, strlen(s)); if (*s) s++; } if (*s) { - strcpy(s, s + 1); + memmove(s, s + 1, strlen(s)); return s; } esyslog("ERROR: missing closing %c", c); @@ -215,7 +215,7 @@ bool cDll::Load(bool Log) if (!q) q = p; switch (*p) { - case '\\': strcpy(p, p + 1); + case '\\': memmove(p, p + 1, strlen(p)); if (*p) p++; else { |