فهرست منبع

duplocale: don't crash when called with LC_GLOBAL_LOCALE

posix has resolved to add this usage; for now, we just avoid writing
anything to the new locale object since it's not used anyway.
Rich Felker 12 سال پیش
والد
کامیت
b3d7d062af
1فایلهای تغییر یافته به همراه1 افزوده شده و 1 حذف شده
  1. 1 1
      src/locale/duplocale.c

+ 1 - 1
src/locale/duplocale.c

@@ -6,6 +6,6 @@ locale_t duplocale(locale_t old)
 {
 	locale_t new;
 	new = calloc(1, sizeof *new);
-	if (new) memcpy(new, old, sizeof *new);
+	if (new && old != LC_GLOBAL_LOCALE) memcpy(new, old, sizeof *new);
 	return new;
 }