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/api/ModuleHandle.java
* name in library file.
	 * <li>The structure defined in preceding library overrides the one with
	 * the same name in following library file.
	 * <ul>
	 * 
	 * @param propName
	 *            name of the list property
	 * @param nameMember
	 *            name of the name member
	 * @return the filtered structure list with the above rule.
	 */
	List getFilteredStructureList( String propName, String nameMember )
	{
		List list = new ArrayList( );
		PropertyHandle propHandle = getPropertyHandle( propName );
		assert propHandle != null;
		Set names = new HashSet( );
		Iterator iter = propHandle.iterator( );
		while ( iter.hasNext( ) )
		{
			StructureHandle s = (StructureHandle) iter.next( );
			String nameValue = (String) s.getProperty( nameMember );
			if ( !names.contains( nameValue ) )
			{
				list.add( s );
				names.add( nameValue );
			}
		}
		List theLibraries = getLibraries( );
		int size = theLibraries.size( );