Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 289022
Collapse All | Expand All

(-)cvs-1.12.13.1.orig//lib/vasnprintf.c (-3 / +15 lines)
Lines 560-568 Link Here
560
		  }
560
		  }
561
		*p = dp->conversion;
561
		*p = dp->conversion;
562
#if USE_SNPRINTF
562
#if USE_SNPRINTF
563
		p[1] = '%';
563
#if !(__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3))
564
		p[2] = 'n';
564
              p[1] = '%';
565
		p[3] = '\0';
565
              p[2] = 'n';
566
              p[3] = '\0';
567
#else
568
              /* On glibc2 systems from glibc >= 2.3 - probably also older
569
                 ones - we know that snprintf's returns value conforms to
570
                 ISO C 99: the gl_SNPRINTF_DIRECTIVE_N test passes.
571
                 Therefore we can avoid using %n in this situation.
572
                 On glibc2 systems from 2004-10-18 or newer, the use of %n
573
                 in format strings in writable memory may crash the program
574
                 (if compiled with _FORTIFY_SOURCE=2), so we should avoid it
575
                 in this situation.  */
576
              p[1] = '\0';
577
#endif
566
#else
578
#else
567
		p[1] = '\0';
579
		p[1] = '\0';
568
#endif
580
#endif

Return to bug 289022