Modified the file locking behavior so that the command "locking" is
recognized as a valid command when file locking has been disabled as a compile-time option. The command then generates an error on "locking enable" but simply ignores the command "locking disable".
This commit is contained in:
parent
fd4f239e2d
commit
fe2eb6d390
|
|
@ -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 */
|
||||
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -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\
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
|
|||
|
|
@ -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++)
|
||||
|
|
|
|||
Loading…
Reference in New Issue