Bug 146976 Save state of the report not correct.
Reproduce: 1) New a library "lib1", add a label "label1" 2) Publish "lib1" 3) New a report "report1", use "lib1" 4) Drag "lib1.label1" into "report1" 5) Go back to "lib1", drop "label1", save and publish again. 6) Go to "report1", refresh the libaray explorer and design. 7) Save "report1" 8) Now, we go back to "lib1" 9) Undo the previous "delete command", "label1" is added back. 10) Save "lib1", and re-publish. 11) Go to "report1", refresh the libaray explorer and design. 12) Save "report1" At this stage, "report1" is saved, but the dirty indicator(*) still displayed in the left side of the report name. I am testing on build N20060613
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/activity/ActivityStack.java
* <p>
 * <ul>
 * <li>A transaction counter. Each new transaction (including those that
 * consist of a single command) is assigned a monotonically increasing serial
 * number.
 * <li>
 * <li>The current transaction number. This is the one at the top of the undo
 * stack. If the undo stack size is empty, then it is computed from the
 * transaction counter.
 * <li>
 * <li>The save state of the design. This is the current transaction number in
 * effect at the time the design was last saved. (By definition, the save state
 * and transaction counter are both 0 when a design is created or loaded.)</li>
 * </ul>
 * <p>
 * With the above, it is very easy to detect a dirty design: a design is dirty
 * if and only if its save state differs from the current transaction number.
 * 
 * <h3>Notification</h3>
 * 
 * Any class interested in the activity stack can implement the interface
 * <code>ActivityStackListener</code>. And {@link #addListener}and
 * {@link #removeListener}methods add and remove listeners. The listener class
 * will be notified when {@link #execute(IActivityRecord)},{@link #commit()},
 * {@link #undo()}, or {@link #redo()}is called. The event
 * <code>ActivityStackEvent</code> contains the cause of the activity stack
 * change.
 * 
 */
public class ActivityStack implements CommandStack