From cf54d146d1e085e122eba990cf51e6c2f133d433 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Wed, 20 Jan 2021 15:00:19 -0500 Subject: [PATCH] Another change to CalmaWrite to avoid writing subcells of any cell def that is marked for a "full dump" from a referenced GDS file. This change was supposed to have been done a few commits ago but did not work as advertised. --- VERSION | 2 +- calma/CalmaWrite.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/VERSION b/VERSION index 60d1fa3a..95f1edac 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -8.3.118 +8.3.119 diff --git a/calma/CalmaWrite.c b/calma/CalmaWrite.c index d2f8f0db..a5e38473 100644 --- a/calma/CalmaWrite.c +++ b/calma/CalmaWrite.c @@ -815,9 +815,13 @@ calmaProcessDef(def, outf, do_library) /* * Output the definitions for any of our descendants that have * not already been output. Numbers are assigned to the subcells - * as they are output. + * as they are output. If the cell will get a "full dump" (by + * having GDS_START but no GDS_END), then do not output any subcells, + * as they are expected to be in the referenced GDS file. */ - if (DBCellEnum(def, calmaProcessUse, (ClientData) outf) != 0) return 1; + if (!hasContent || hasGDSEnd) + if (DBCellEnum(def, calmaProcessUse, (ClientData) outf) != 0) + return 1; if (isReadOnly && hasContent) {