about summary refs log tree commit diff
path: root/lib/libpam.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libpam.c')
-rw-r--r--lib/libpam.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/libpam.c b/lib/libpam.c
index 998710b1..1f58aa7b 100644
--- a/lib/libpam.c
+++ b/lib/libpam.c
@@ -1029,12 +1029,16 @@ pnm_writepaminit(struct pam * const pamP) {
 
     pamP->bytes_per_sample = pnm_bytespersample(pamP->maxval);
 
-    interpretTupleType(pamP);
-
     if (pamP->size >= PAM_STRUCT_SIZE(comment_p) &&
         pamP->len < PAM_STRUCT_SIZE(comment_p))
         pamP->comment_p = NULL;
 
+    if (pamP->size >= PAM_STRUCT_SIZE(allocation_depth) &&
+        pamP->len < PAM_STRUCT_SIZE(allocation_depth))
+        pamP->allocation_depth = 0;
+
+    interpretTupleType(pamP);
+
     pamP->len = MIN(pamP->size, PAM_STRUCT_SIZE(opacity_plane));
     
     switch (PAM_FORMAT_TYPE(pamP->format)) {