Tcl package Thread source code

Check-in [5507a0fde4]
Login
Bounty program for improvements to Tcl and certain Tcl packages.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Merge 2.9
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 5507a0fde48ff3b7d4f1d8edd1ea046aaacad1cefb4dcddd3a95f33793e26307
User & Date: jan.nijtmans 2020-03-06 19:29:33
Context
2020-03-11
21:44
Fix platform detection checks that intended to block use of Thread package on platforms with a pointer size of less than 32 bits but inadvertently also blocked 64-bit platforms. check-in: c1a7d4820b user: pooryorick tags: trunk
2020-03-06
19:29
Merge 2.9 check-in: 5507a0fde4 user: jan.nijtmans tags: trunk
19:29
Merge 2.8 check-in: 369127062c user: jan.nijtmans tags: thread-2-branch
2020-02-12
14:04
Merge 2.9 check-in: 065eba7f8e user: jan.nijtmans tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclXkeylist.c.

523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
static int
FindKeyedListEntry(
    keylIntObj_t *keylIntPtr,
    const char   *key,
    size_t       *keyLenPtr,
    const char   **nextSubKeyPtr
) {
    char *keySeparPtr;
    size_t keyLen;
    int findIdx;

    keySeparPtr = strchr (key, '.');
    if (keySeparPtr != NULL) {
        keyLen = keySeparPtr - key;
    } else {
        keyLen = strlen (key);
    }

    for (findIdx = 0; findIdx < keylIntPtr->numEntries; findIdx++) {







|



|







523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
static int
FindKeyedListEntry(
    keylIntObj_t *keylIntPtr,
    const char   *key,
    size_t       *keyLenPtr,
    const char   **nextSubKeyPtr
) {
    const char *keySeparPtr;
    size_t keyLen;
    int findIdx;

    keySeparPtr = strchr(key, '.');
    if (keySeparPtr != NULL) {
        keyLen = keySeparPtr - key;
    } else {
        keyLen = strlen (key);
    }

    for (findIdx = 0; findIdx < keylIntPtr->numEntries; findIdx++) {

Changes to generic/threadSvCmd.c.

410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
 */

static PsStore*
GetPsStore(const char *handle)
{
    int i;
    const char *type = handle;
    char *addr, *delimiter = strchr(handle, ':');
    PsStore *tmpPtr, *psPtr = NULL;

    /*
     * Expect the handle in the following format: <type>:<address>
     * where "type" must match one of the registered presistent store
     * types (gdbm, tcl, whatever) and <address> is what is passed to
     * the open procedure of the registered store.







|







410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
 */

static PsStore*
GetPsStore(const char *handle)
{
    int i;
    const char *type = handle;
    char *addr, *delimiter = (char *)strchr(handle, ':');
    PsStore *tmpPtr, *psPtr = NULL;

    /*
     * Expect the handle in the following format: <type>:<address>
     * where "type" must match one of the registered presistent store
     * types (gdbm, tcl, whatever) and <address> is what is passed to
     * the open procedure of the registered store.