diff --git a/VERSION b/VERSION index b728c82e..1fc685e0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -8.3.293 +8.3.294 diff --git a/commands/CmdLQ.c b/commands/CmdLQ.c index 6bd692cb..ca700866 100644 --- a/commands/CmdLQ.c +++ b/commands/CmdLQ.c @@ -549,7 +549,6 @@ keepGoing(use, clientdata) return 0; /* keep the search going */ } -#ifdef FILE_LOCKS /* * ---------------------------------------------------------------------------- * @@ -578,6 +577,11 @@ keepGoing(use, clientdata) * Side effects: * Sets global boolean variable FileLocking. * + * Note: + * When magic is configured with --disable-locking, then this command + * is implemented such that "locking enable" does nothing, and + * "locking disable" generates an error. + * * ---------------------------------------------------------------------------- */ @@ -593,6 +597,7 @@ CmdLocking(w, cmd) if (cmd->tx_argc <= 1) { +#ifdef FILE_LOCKS #ifdef MAGIC_WRAPPER /* Interpreter return value is the state of locking */ Tcl_SetResult(magicinterp, (FileLocking) ? "enabled" : "disabled", @@ -612,8 +617,27 @@ CmdLocking(w, cmd) } FileLocking = (option <= 4) ? FALSE : TRUE; } +#else /* !FILE_LOCKS */ +#ifdef MAGIC_WRAPPER + Tcl_SetResult(magicinterp, + "File locking disabled as a compile-time option", + TCL_VOLATILE); +#else + /* Print the status of file locking to the console */ + TxPrintf("File locking disabled as a compile-time option\n"); +#endif + } + else + { + option = Lookup(cmd->tx_argv[1], cmdLockingYesNo); + if (option < 0) + TxError("Unknown locking option \"%s\"\n", cmd->tx_argv[1]); + else if (option > 4) /* "true", "enable", "on", etc. */ + TxError("Cannot enable locking because it has been disabled" + " as a compile-time option.\n"); + } +#endif /* !FILE_LOCKS */ } -#endif /* FILE_LOCKS */ /* * ---------------------------------------------------------------------------- diff --git a/dbwind/DBWcommands.c b/dbwind/DBWcommands.c index 31e856f1..0a2de85d 100644 --- a/dbwind/DBWcommands.c +++ b/dbwind/DBWcommands.c @@ -47,9 +47,7 @@ extern void CmdEdit(), CmdElement(), CmdErase(), CmdExpand(), CmdExtract(); extern void CmdFeedback(), CmdFill(), CmdFindBox(), CmdFindLabel(), CmdFlush(); extern void CmdGetcell(), CmdGrid(), CmdIdentify(); extern void CmdLabel(), CmdLoad(); -#ifdef FILE_LOCKS extern void CmdLocking(); -#endif extern void CmdMove(), CmdNetlist(), CmdOrient(), CmdPaint(), CmdPath(); extern void CmdPlow(), CmdPolygon(), CmdPort(), CmdProperty(); extern void CmdRandom(), CmdSave(), CmdScaleGrid(), CmdSee(); @@ -372,11 +370,9 @@ DBWInitCommands() WindAddCommand(DBWclientID, "load [cellname] load a cell into a window", CmdLoad, FALSE); -#ifdef FILE_LOCKS WindAddCommand(DBWclientID, "locking [enable|disable] enable or disable file locking", CmdLocking, FALSE); -#endif WindAddCommand(DBWclientID, "move [dir [amount]] OR\n" "move to x y move box and selection, either by amount\n\ diff --git a/drc/DRCtech.c b/drc/DRCtech.c index ff6dfecd..13b7c603 100644 --- a/drc/DRCtech.c +++ b/drc/DRCtech.c @@ -1028,7 +1028,7 @@ DRCTechAddRule(sectionName, argc, argv) "exact_overlap", 2, 2, drcExactOverlap, "layers", "extend", 5, 6, drcExtend, - "layers1 layers2 distance why", + "layers1 layers2 distance [option] why", "no_overlap", 3, 3, drcNoOverlap, "layers1 layers2", "option", 2, 2, drcOption, diff --git a/extract/ExtHier.c b/extract/ExtHier.c index 2761116b..42035719 100644 --- a/extract/ExtHier.c +++ b/extract/ExtHier.c @@ -155,7 +155,7 @@ extHierSubstrate(ha, use, x, y) { /* Check area under all of the subcircuit (not just the part */ /* in the current interaction area). */ - GeoTransRect(&use->cu_transform, &use->cu_def->cd_bbox, &subArea.r_ll); + GeoTransRect(&use->cu_transform, &use->cu_def->cd_bbox, &subArea); } for (pNum = PL_TECHDEPBASE; pNum < DBNumPlanes; pNum++)