Index: /trunk/psModules/src/concepts/pmConceptsStandard.c
===================================================================
--- /trunk/psModules/src/concepts/pmConceptsStandard.c	(revision 15228)
+++ /trunk/psModules/src/concepts/pmConceptsStandard.c	(revision 15229)
@@ -837,33 +837,35 @@
     // Return a metadata item containing a list of metadata items of region strings
     psList *biassecs = concept->data.V; // The biassecs region list
-    psListIterator *biassecsIter = psListIteratorAlloc(biassecs, PS_LIST_HEAD, false); // Iterator
-    psRegion *region = NULL;            // Region from iteration
     psList *new = psListAlloc(NULL);    // New list containing metadatas
-    while ((region = psListGetAndIncrement(biassecsIter))) {
-
-        // Correct bias section for binning if it's specified explicitly (i.e., immutably) in the CELLS.
-        if (source == PM_CONCEPT_SOURCE_CELLS) {
-            bool xStatus, yStatus;          // Status of MD lookups
-            int xBin = psMetadataLookupS32(&xStatus, cell->concepts, "CELL.XBIN");
-            int yBin = psMetadataLookupS32(&yStatus, cell->concepts, "CELL.YBIN");
-            if (!xStatus || !yStatus || xBin == 0 || yBin == 0) {
-                psWarning("Unable to find CELL.XBIN and CELL.YBIN to correct CELL.BIASSEC.\n");
+    if (biassecs) {
+        psListIterator *biassecsIter = psListIteratorAlloc(biassecs, PS_LIST_HEAD, false); // Iterator
+        psRegion *region = NULL;            // Region from iteration
+        while ((region = psListGetAndIncrement(biassecsIter))) {
+            // Correct bias section for binning if it's specified explicitly (i.e., immutably) in the CELLS.
+            if (source == PM_CONCEPT_SOURCE_CELLS) {
+                bool xStatus, yStatus;          // Status of MD lookups
+                int xBin = psMetadataLookupS32(&xStatus, cell->concepts, "CELL.XBIN");
+                int yBin = psMetadataLookupS32(&yStatus, cell->concepts, "CELL.YBIN");
+                if (!xStatus || !yStatus || xBin == 0 || yBin == 0) {
+                    psWarning("Unable to find CELL.XBIN and CELL.YBIN to correct CELL.BIASSEC.\n");
+                } else {
+                    psRegion *newTrimsec = psRegionAlloc(region->x0 * xBin, region->x1 * xBin,
+                                                         region->y0 * yBin, region->y1 * yBin);
+                    region = newTrimsec;
+                }
             } else {
-                psRegion *newTrimsec = psRegionAlloc(region->x0 * xBin, region->x1 * xBin,
-                                                     region->y0 * yBin, region->y1 * yBin);
-                region = newTrimsec;
+                psMemIncrRefCounter(region);
             }
-        } else {
-            psMemIncrRefCounter(region);
-        }
-
-        psString regionString = psRegionToString(*region); // The string region "[x0:x1,y0:y1]"
-        psFree(region);
-        psMetadataItem *item = psMetadataItemAllocStr(concept->name, concept->comment, regionString);
-        psFree(regionString);           // Drop reference
-        psListAdd(new, PS_LIST_TAIL, item);
-        psFree(item);                   // Drop reference
-    }
-    psFree(biassecsIter);
+
+            psString regionString = psRegionToString(*region); // The string region "[x0:x1,y0:y1]"
+            psFree(region);
+            psMetadataItem *item = psMetadataItemAllocStr(concept->name, concept->comment, regionString);
+            psFree(regionString);           // Drop reference
+            psListAdd(new, PS_LIST_TAIL, item);
+            psFree(item);                   // Drop reference
+        }
+        psFree(biassecsIter);
+    }
+
     psMetadataItem *formatted = psMetadataItemAllocPtr(concept->name, PS_DATA_LIST, concept->comment, new);
     psFree(new);                        // Drop reference
