Bug, reported by Bassam;
When editing Meshes with vertex keys (RVKs), the undo stack isn't updated correctly, causing a loss of the situation when entering editmode after changing active key, and doing undo immediate after. This due to an 'optimizer' in the undo code that tried to prevent undos pushed on identical situations (e.g. pressing TAB multiple times). Decided to remove that convention, the annoyance of having possible multiple undos in a row isn't worth solving it by potential losses.
This commit is contained in:
parent
f48b4f5b4a
commit
d422cbb544
@ -132,12 +132,9 @@ void undo_editmode_push(char *name, void (*freedata)(void *),
|
||||
UndoElem *uel;
|
||||
int nr;
|
||||
|
||||
/* prevent two same undocalls */
|
||||
if(curundo && strcmp("Original", name)==0) {
|
||||
if( curundo->ob==G.obedit && curundo->type==G.obedit->type) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
/* at first here was code to prevent an "original" key to be insterted twice
|
||||
this was giving conflicts for example when mesh changed due to keys or apply */
|
||||
|
||||
/* remove all undos after (also when curundo==NULL) */
|
||||
while(undobase.last != curundo) {
|
||||
uel= undobase.last;
|
||||
|
Loading…
Reference in New Issue
Block a user