diff options
Diffstat (limited to 'generic/tkUndo.c')
-rw-r--r-- | generic/tkUndo.c | 36 |
1 files changed, 8 insertions, 28 deletions
diff --git a/generic/tkUndo.c b/generic/tkUndo.c index c860021..cbb3fac 100644 --- a/generic/tkUndo.c +++ b/generic/tkUndo.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkUndo.c,v 1.1.4.1 2004/07/14 19:07:48 hobbs Exp $ + * RCS: @(#) $Id: tkUndo.c,v 1.1.4.2 2006/03/20 22:16:34 dkf Exp $ */ #include "tkUndo.h" @@ -190,12 +190,15 @@ void TkUndoSetDepth ( stack, maxdepth ) stack->maxdepth = maxdepth; if ((stack->maxdepth > 0) && (stack->depth > stack->maxdepth)) { - /* Maximum stack depth exceeded. We have to remove the last compound - elements on the stack */ + /* + * Maximum stack depth exceeded. We have to remove the last compound + * elements on the stack. + */ + elem = stack->undoStack; prevelem = NULL; - while ( sepNumber <= stack->maxdepth ) { - if (elem != NULL && (elem->type == TK_UNDO_SEPARATOR) ) { + while (elem && (sepNumber <= stack->maxdepth)) { + if (elem->type == TK_UNDO_SEPARATOR) { sepNumber++; } prevelem = elem; @@ -268,32 +271,9 @@ void TkUndoFreeStack ( stack ) void TkUndoInsertUndoSeparator ( stack ) TkUndoRedoStack * stack; { -/* TkUndoAtom * elem; - TkUndoAtom * prevelem; - int sepNumber = 0; -*/ - if ( TkUndoInsertSeparator(&(stack->undoStack)) ) { ++(stack->depth); TkUndoSetDepth(stack,stack->maxdepth); -/* if ((stack->maxdepth > 0) && (stack->depth > stack->maxdepth)) { - elem = stack->undoStack; - prevelem = NULL; - while ( sepNumber < stack->depth ) { - if (elem != NULL && (elem->type == TK_UNDO_SEPARATOR) ) { - sepNumber++; - } - prevelem = elem; - elem = elem->next; - } - prevelem->next = NULL; - while ( elem ) { - prevelem = elem; - elem = elem->next; - ckfree((char *) elem); - } - stack->depth; - } */ } } |