while (mutex) { try { wait(); } catch (InterruptedException e) { if (Thread.currentThread().isInterrupted()) { // gota go now throw new RuntimeException(e); } // else keep waiting } }
try { mergeRAMtoIndex(); } catch (IOException e) { LOG.severe(e.getMessage()); }
Clone fragments detected by clone detection tool
File path: /columba-1.4-src/core/src/main/java/org/columba/core/base/Mutex.java File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/folder/search/LuceneQueryEngine.java
Method name: void lock() Method name: void save()
Number of AST nodes: 3 Number of AST nodes: 2
1
while (mutex) {
2
            try {
3
                wait();
4
            } catch (InterruptedException e) {
5
                if (Thread.currentThread().isInterrupted()) {
6
                    // gota go now
7
                    throw new RuntimeException(e);
8
                }
9
                // else keep waiting
10
            }
11
        
1
try {
2
			mergeRAMtoIndex();
3
		} catch (IOException e) {
4
			LOG.severe(e.getMessage());
12
}
5
		}
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.1
Clones locationClones are in different classes
Number of node comparisons1