summaryrefslogtreecommitdiff
path: root/plugin.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2010-01-06 11:41:14 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2010-01-06 11:41:14 +0100
commit2cc10815edbfa202a34fb16c7c2d81d1814b0ee1 (patch)
tree169f3ee6d00130e57d7adf27e9d15211266482fd /plugin.c
parentaf494287cf131d152f1a925614ded6def491b3e0 (diff)
downloadvdr-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.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/plugin.c b/plugin.c
index 238a0d6a..97b4436a 100644
--- a/plugin.c
+++ b/plugin.c
@@ -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 {