From 6ef596d4d54bad09e6edb27141ad83a85ebb6411 Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Fri, 28 Jan 2011 09:17:54 +0000 Subject: [PATCH] Use memcpy instead of strndup() as we know the length of the string. Also fixes compilation on Mac OS X where strndup() is not defined. SVN revision: 56341 --- legacy/ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c index 3607980cfa..1aee15d002 100644 --- a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c +++ b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_randr_12.c @@ -406,11 +406,13 @@ ecore_x_randr_mode_info_get(Ecore_X_Window root, Ecore_X_Randr_Mode mode) ret->vTotal = res->modes[i].vTotal; ret->name = NULL; ret->nameLength = 0; - if (res->modes[i].nameLength > 0) + if (res->modes[i].nameLength > 0) { ret->nameLength = res->modes[i].nameLength; - ret->name = strndup(res->modes[i].name, - res->modes[i].nameLength); + ret->name = malloc(res->modes[i].nameLength + 1); + if (ret->name) + memcpy(ret->name, res->modes[i].name, + res->modes[i].nameLength + 1); } ret->modeFlags = res->modes[i].modeFlags; break;