Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | merge to RC |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-5-10-rc |
Files: | files | file ages | folders |
SHA1: |
4d3d954e879972d1c227dba1d1a6a391 |
User & Date: | dgp 2011-06-20 20:17:38 |
Context
2011-06-21
| ||
17:05 | release mark in ChangeLog check-in: c5ce2de6 user: dgp tags: core-8-5-10-rc | |
2011-06-20
| ||
20:17 | merge to RC check-in: 4d3d954e user: dgp tags: core-8-5-10-rc | |
2011-06-17
| ||
18:24 | Crash in unset traces 3062331 check-in: 6c9558cd user: dgp tags: core-8-5-branch | |
2011-06-10
| ||
20:14 | Merge to RC branch check-in: 93607b5f user: dgp tags: core-8-5-10-rc | |
Changes
Changes to ChangeLog.
1 2 3 4 5 6 7 | 2011-06-10 Don Porter <[email protected]> * README: Correct some README bitrot. * macosx/README: * generic/tkCanvLine.c: [Bug 3175610] Incomplete refresh of line item. Backport of 2011-03-03 trunk commit from Alexandre Ferrieux. | > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 2011-06-17 Don Porter <[email protected]> * generic/ttk/ttkTrace.c: Workaround Bug 3062331. * tests/ttk/ttk.test: * changes: Updated 2011-06-16 Jan Nijtmans <[email protected]> * win/tcl.m4: Sync with win/tcl.m4 from Tcl * win/configure: (regenerated) 2011-06-10 Don Porter <[email protected]> * README: Correct some README bitrot. * macosx/README: * generic/tkCanvLine.c: [Bug 3175610] Incomplete refresh of line item. Backport of 2011-03-03 trunk commit from Alexandre Ferrieux. |
︙ | ︙ |
Changes to changes.
︙ | ︙ | |||
6774 6775 6776 6777 6778 6779 6780 | 2011-06-07 (bug fix)[2358545] Restore "08" in spinbox configured with -from and -to (porter) 2011-06-07 (bug fix)[2484771] modal dialog settings (hoff, thoyts) 2011-06-10 (bug fix)[3175610] incomplete line item refresh (ferrieux) | > > | | 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 | 2011-06-07 (bug fix)[2358545] Restore "08" in spinbox configured with -from and -to (porter) 2011-06-07 (bug fix)[2484771] modal dialog settings (hoff, thoyts) 2011-06-10 (bug fix)[3175610] incomplete line item refresh (ferrieux) 2011-06-17 (bug fix)[3062331] crash in unset traces (macdonald,porter) --- Released 8.5.10, June 22, 2011 --- See ChangeLog for details --- |
Changes to generic/ttk/ttkTrace.c.
︙ | ︙ | |||
40 41 42 43 44 45 46 47 48 49 50 51 52 53 | name = Tcl_GetString(tracePtr->varnameObj); /* * If the variable is being unset, then re-establish the trace: */ if (flags & TCL_TRACE_DESTROYED) { Tcl_TraceVar(interp, name, TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS, VarTraceProc, clientData); tracePtr->callback(tracePtr->clientData, NULL); return NULL; } | > > > > > > > > > > | 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | name = Tcl_GetString(tracePtr->varnameObj); /* * If the variable is being unset, then re-establish the trace: */ if (flags & TCL_TRACE_DESTROYED) { /* * If a prior call to Ttk_UntraceVariable() left behind an * indicator that we wanted this handler to be deleted (see below), * cleanup the ClientData bits and exit. */ if (tracePtr->interp == NULL) { Tcl_DecrRefCount(tracePtr->varnameObj); ckfree((ClientData)tracePtr); return NULL; } Tcl_TraceVar(interp, name, TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS, VarTraceProc, clientData); tracePtr->callback(tracePtr->clientData, NULL); return NULL; } |
︙ | ︙ | |||
100 101 102 103 104 105 106 107 108 109 110 111 112 113 | /* * Ttk_UntraceVariable -- * Remove previously-registered trace and free the handle. */ void Ttk_UntraceVariable(Ttk_TraceHandle *h) { if (h) { Tcl_UntraceVar(h->interp, Tcl_GetString(h->varnameObj), TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS, VarTraceProc, (ClientData)h); Tcl_DecrRefCount(h->varnameObj); ckfree((ClientData)h); } } | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 | /* * Ttk_UntraceVariable -- * Remove previously-registered trace and free the handle. */ void Ttk_UntraceVariable(Ttk_TraceHandle *h) { if (h) { ClientData cd = NULL; /* * Workaround for Tcl Bug 3062331. The trace design problem is * that when variable unset traces fire, Tcl documents that the * traced variable has already been unset. It's already gone. * So from within an unset trace, if you try to call * Tcl_UntraceVar() on that variable, it will do nothing, because * the variable by that name can no longer be found. It's gone. * This means callers of Tcl_UntraceVar() that might be running * in response to an unset trace have to handle the possibility * that their Tcl_UntraceVar() call will do nothing. In this case, * we have to support the possibility that Tcl_UntraceVar() will * leave the trace in place, so we need to leave the ClientData * untouched so when that trace does fire it will not crash. */ /* * Search the traces on the variable to see if the one we are tasked * with removing is present. */ while ((cd = Tcl_VarTraceInfo(h->interp, Tcl_GetString(h->varnameObj), 0, VarTraceProc, cd)) != NULL) { if (cd == (ClientData) h) { break; } } /* * If the trace we wish to delete is not visible, Tcl_UntraceVar * will do nothing, so don't try to call it. Instead set an * indicator in the Ttk_TraceHandle that we need to cleanup later. */ if (cd == NULL) { h->interp = NULL; return; } Tcl_UntraceVar(h->interp, Tcl_GetString(h->varnameObj), TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS, VarTraceProc, (ClientData)h); Tcl_DecrRefCount(h->varnameObj); ckfree((ClientData)h); } } |
︙ | ︙ |
Changes to tests/ttk/ttk.test.
︙ | ︙ | |||
551 552 553 554 555 556 557 558 559 560 561 562 563 564 | -match glob -cleanup { destroy .tw } test ttk-14.3 "-textvariable in nonexistant namespace" -body { ttk::entry .tw -textvariable ::nsn::foo } -returnCodes 1 -result {can't trace *: parent namespace doesn't exist} \ -match glob -cleanup { destroy .tw } ## Test ensemble processing: # # (See also: SF#2021443) # proc wrong#args {args} { return "wrong # args: should be \"$args\"" | > > > > > > > > > > | 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 | -match glob -cleanup { destroy .tw } test ttk-14.3 "-textvariable in nonexistant namespace" -body { ttk::entry .tw -textvariable ::nsn::foo } -returnCodes 1 -result {can't trace *: parent namespace doesn't exist} \ -match glob -cleanup { destroy .tw } test ttk-15.1 {Bug 3062331} -setup { destroy .b } -body { set Y {} ttk::button .b -textvariable Y trace variable Y u "destroy .b" unset Y } -cleanup { destroy .b } -result {} ## Test ensemble processing: # # (See also: SF#2021443) # proc wrong#args {args} { return "wrong # args: should be \"$args\"" |
︙ | ︙ |
Changes to win/configure.
︙ | ︙ | |||
3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 | echo "$as_me:$LINENO: result: Using 64-bit $MACHINE mode" >&5 echo "${ECHO_T} Using 64-bit $MACHINE mode" >&6 ;; ia64) MACHINE="IA64" echo "$as_me:$LINENO: result: Using 64-bit $MACHINE mode" >&5 echo "${ECHO_T} Using 64-bit $MACHINE mode" >&6 ;; esac else if test "${SHARED_BUILD}" = "0" ; then # static echo "$as_me:$LINENO: result: using static flags" >&5 echo "${ECHO_T}using static flags" >&6 | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 | echo "$as_me:$LINENO: result: Using 64-bit $MACHINE mode" >&5 echo "${ECHO_T} Using 64-bit $MACHINE mode" >&6 ;; ia64) MACHINE="IA64" echo "$as_me:$LINENO: result: Using 64-bit $MACHINE mode" >&5 echo "${ECHO_T} Using 64-bit $MACHINE mode" >&6 ;; *) cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef _WIN64 #error 64-bit #endif int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then tcl_win_64bit=no else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 tcl_win_64bit=yes fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test "$tcl_win_64bit" = "yes" ; then do64bit=amd64 MACHINE="AMD64" echo "$as_me:$LINENO: result: Using 64-bit $MACHINE mode" >&5 echo "${ECHO_T} Using 64-bit $MACHINE mode" >&6 fi ;; esac else if test "${SHARED_BUILD}" = "0" ; then # static echo "$as_me:$LINENO: result: using static flags" >&5 echo "${ECHO_T}using static flags" >&6 |
︙ | ︙ |
Changes to win/tcl.m4.
︙ | ︙ | |||
552 553 554 555 556 557 558 559 560 561 562 563 564 565 | amd64|x64|yes) MACHINE="AMD64" ; # assume AMD64 as default 64-bit build AC_MSG_RESULT([ Using 64-bit $MACHINE mode]) ;; ia64) MACHINE="IA64" AC_MSG_RESULT([ Using 64-bit $MACHINE mode]) ;; esac else if test "${SHARED_BUILD}" = "0" ; then # static AC_MSG_RESULT([using static flags]) runtime=-MT | > > > > > > > > > > > > > > > | 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 | amd64|x64|yes) MACHINE="AMD64" ; # assume AMD64 as default 64-bit build AC_MSG_RESULT([ Using 64-bit $MACHINE mode]) ;; ia64) MACHINE="IA64" AC_MSG_RESULT([ Using 64-bit $MACHINE mode]) ;; *) AC_TRY_COMPILE([ #ifdef _WIN64 #error 64-bit #endif ], [], tcl_win_64bit=no, tcl_win_64bit=yes ) if test "$tcl_win_64bit" = "yes" ; then do64bit=amd64 MACHINE="AMD64" AC_MSG_RESULT([ Using 64-bit $MACHINE mode]) fi ;; esac else if test "${SHARED_BUILD}" = "0" ; then # static AC_MSG_RESULT([using static flags]) runtime=-MT |
︙ | ︙ |