]> granicus.if.org Git - python/commitdiff
Backport 52501:
authorNeal Norwitz <nnorwitz@gmail.com>
Sat, 28 Oct 2006 21:36:37 +0000 (21:36 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Sat, 28 Oct 2006 21:36:37 +0000 (21:36 +0000)
Add some asserts.  In sysmodule, I think these were to try to silence
some warnings from Klokwork.  They verify the assumptions of the format
of svn version output.

The assert in the thread module helped debug a problem on HP-UX.

Modules/threadmodule.c
Python/sysmodule.c

index 448b11cd67ad8668143a919d117c7f95f0359fe7..036619a8fbd08e473c65092230dab6574d9b8794 100644 (file)
@@ -25,6 +25,7 @@ typedef struct {
 static void
 lock_dealloc(lockobject *self)
 {
+       assert(self->lock_lock);
        /* Unlock the lock so it's safe to free it */
        PyThread_acquire_lock(self->lock_lock, 0);
        PyThread_release_lock(self->lock_lock);
index 6fbaba50252b2a30a53740bdba926eff2ebd2856..4970adff501278e5100ad44847e006d86c7ebbd5 100644 (file)
@@ -983,6 +983,8 @@ svnversion_init(void)
 
        br_start = python + 8;
        br_end = strchr(br_start, '/');
+       assert(br_end);
+
        /* Works even for trunk,
           as we are in trunk/Python/sysmodule.c */
        br_end2 = strchr(br_end+1, '/');
@@ -995,6 +997,8 @@ svnversion_init(void)
        }
        else if (istag || strncmp(br_start, "branches", 8) == 0) {
                len = br_end2 - br_start;
+               assert(len >= 13);
+               assert(len < (sizeof(patchlevel_revision) - 13));
                strncpy(branch, br_start, len);
                branch[len] = '\0';