Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | [Bug 3129527]: Fix buffer overflow w/ GCC 4.5 and -D_FORTIFY_SOURCE=2. One more place where this problem could appear. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-4-branch |
Files: | files | file ages | folders |
SHA1: |
62921742af0fb62317f4f3a3f589e971 |
User & Date: | jan.nijtmans 2011-03-28 09:16:53 |
Context
2011-04-21
| ||
21:01 | Document all variable options as global. check-in: 6242f06c user: pspjuth tags: core-8-4-branch | |
2011-03-28
| ||
09:20 | [Bug 3129527]: Fix buffer overflow w/ GCC 4.5 and -D_FORTIFY_SOURCE=2. One more place where this problem could appear. check-in: bc537f82 user: jan.nijtmans tags: core-8-5-branch | |
09:16 | [Bug 3129527]: Fix buffer overflow w/ GCC 4.5 and -D_FORTIFY_SOURCE=2. One more place where this problem could appear. check-in: 62921742 user: jan.nijtmans tags: core-8-4-branch | |
2011-03-26
| ||
06:35 | The -debug:full option is not supported when using the modern versions of link.exe included with MSVC, use -debug instead check-in: 970fa676 user: jan tags: core-8-4-branch | |
Changes
Changes to ChangeLog.
1 2 3 4 5 6 7 | 2011-03-24 Jan Nijtmans <[email protected]> * win/tkWinMenu.c: [Bug #3239768] tk8.4.19 (and later) WIN32 menu font support. 2011-03-12 Jan Nijtmans <[email protected]> | > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 | 2011-03-28 Jan Nijtmans <[email protected]> * generic/tkTextBTree.c: [Bug 3129527]: Fix buffer overflow w/ GCC 4.5 and -D_FORTIFY_SOURCE=2. One more place where this problem could appear. 2011-03-24 Jan Nijtmans <[email protected]> * win/tkWinMenu.c: [Bug #3239768] tk8.4.19 (and later) WIN32 menu font support. 2011-03-12 Jan Nijtmans <[email protected]> |
︙ | ︙ |
Changes to generic/tkTextBTree.c.
︙ | ︙ | |||
440 441 442 443 444 445 446 | segPtr->nextPtr = linePtr->segPtr; linePtr->segPtr = segPtr; } else { segPtr->nextPtr = curPtr->nextPtr; curPtr->nextPtr = segPtr; } segPtr->size = chunkSize; | | | 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 | segPtr->nextPtr = linePtr->segPtr; linePtr->segPtr = segPtr; } else { segPtr->nextPtr = curPtr->nextPtr; curPtr->nextPtr = segPtr; } segPtr->size = chunkSize; memcpy(segPtr->body.chars, string, (size_t) chunkSize); segPtr->body.chars[chunkSize] = 0; if (eol[-1] != '\n') { break; } /* |
︙ | ︙ | |||
3375 3376 3377 3378 3379 3380 3381 | newPtr1 = (TkTextSegment *) ckalloc(CSEG_SIZE(index)); newPtr2 = (TkTextSegment *) ckalloc( CSEG_SIZE(segPtr->size - index)); newPtr1->typePtr = &tkTextCharType; newPtr1->nextPtr = newPtr2; newPtr1->size = index; | | | > | 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 | newPtr1 = (TkTextSegment *) ckalloc(CSEG_SIZE(index)); newPtr2 = (TkTextSegment *) ckalloc( CSEG_SIZE(segPtr->size - index)); newPtr1->typePtr = &tkTextCharType; newPtr1->nextPtr = newPtr2; newPtr1->size = index; memcpy(newPtr1->body.chars, segPtr->body.chars, (size_t) index); newPtr1->body.chars[index] = 0; newPtr2->typePtr = &tkTextCharType; newPtr2->nextPtr = segPtr->nextPtr; newPtr2->size = segPtr->size - index; memcpy(newPtr2->body.chars, segPtr->body.chars + index, newPtr2->size); newPtr2->body.chars[newPtr2->size] = 0; ckfree((char*) segPtr); return newPtr1; } /* *-------------------------------------------------------------- * |
︙ | ︙ | |||
3422 3423 3424 3425 3426 3427 3428 | return segPtr; } newPtr = (TkTextSegment *) ckalloc(CSEG_SIZE( segPtr->size + segPtr2->size)); newPtr->typePtr = &tkTextCharType; newPtr->nextPtr = segPtr2->nextPtr; newPtr->size = segPtr->size + segPtr2->size; | | | > | 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 | return segPtr; } newPtr = (TkTextSegment *) ckalloc(CSEG_SIZE( segPtr->size + segPtr2->size)); newPtr->typePtr = &tkTextCharType; newPtr->nextPtr = segPtr2->nextPtr; newPtr->size = segPtr->size + segPtr2->size; memcpy(newPtr->body.chars, segPtr->body.chars, segPtr->size); memcpy(newPtr->body.chars + segPtr->size, segPtr2->body.chars, segPtr2->size); newPtr->body.chars[newPtr->size] = 0; ckfree((char*) segPtr); ckfree((char*) segPtr2); return newPtr; } /* *-------------------------------------------------------------- |
︙ | ︙ |