switch( zPend % 2 )
{
case 0:
m_szptr[ wr ] = (short)RUNA;
wr++;
m_mtfFreq[ RUNA ]++;
break;
case 1:
m_szptr[ wr ] = (short)RUNB;
wr++;
m_mtfFreq[ RUNB ]++;
break;
}
;
if( zPend < 2 )
{
break;
}
zPend = ( zPend - 2 ) / 2;
switch( zPend % 2 )
{
case 0:
m_szptr[ wr ] = (short)RUNA;
wr++;
m_mtfFreq[ RUNA ]++;
break;
case 1:
m_szptr[ wr ] = (short)RUNB;
wr++;
m_mtfFreq[ RUNB ]++;
break;
}
if( zPend < 2 )
{
break;
}
zPend = ( zPend - 2 ) / 2;
Clone fragments detected by clone detection tool
File path: /jEdit-4.2/src/installer/CBZip2OutputStream.java
|
|
File path: /jEdit-4.2/src/installer/CBZip2OutputStream.java
|
Method name: void generateMTFValues()
|
|
Method name: void generateMTFValues()
|
Number of AST nodes: 15
|
|
Number of AST nodes: 14
|
|
1 | switch( zPend % 2 )↵ | | 1 | switch( zPend % 2 )↵
|
2 | {↵ | | 2 | ↵
|
3 | ↵ | | 3 | {↵
|
4 | case 0:↵ | | 4 | case 0:↵
|
5 | m_szptr[ wr ] = (short)RUNA;↵ | | 5 | m_szptr[ wr ] = (short)RUNA;↵
|
6 | wr++;↵ | | 6 | wr++;↵
|
7 | m_mtfFreq[ RUNA ]++;↵ | | 7 | m_mtfFreq[ RUNA ]++;↵
|
8 | break;↵ | | 8 | ↵
|
9 | ↵ | | 9 | break;↵
|
10 | case 1:↵ | | 10 | case 1:↵
|
11 | m_szptr[ wr ] = (short)RUNB;↵ | | 11 | m_szptr[ wr ] = (short)RUNB;↵
|
12 | wr++;↵ | | 12 | wr++;↵
|
13 | m_mtfFreq[ RUNB ]++;↵ | | 13 | m_mtfFreq[ RUNB ]++;↵
|
14 | break;↵ | | 14 | break;↵
|
15 | }↵ | | 15 | }↵
|
16 | ;↵ | | |
|
17 | if( zPend < 2 )↵ | | 16 | if( zPend < 2 )↵
|
18 | {↵ | | 17 | ↵
|
19 | ↵ | | 18 | {↵
|
20 | break;↵ | | 19 | break;↵
|
21 | }↵ | | 20 | ↵
|
22 | ↵ | | 21 | }↵
|
23 | zPend = ( zPend - 2 ) / 2; | | 22 | zPend = ( zPend - 2 ) / 2;
|
See real code fragment |
|
See real code fragment |
Summary
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.2 |
Clones location | Clones are in the same method |
Number of node comparisons | 114 |
-
{Non-refactorable}
Mapping Summary
Number of mapped statements | 14 |
Number of unmapped statements in the first code fragment | 1 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 4.3 |
Clone type | Type 3 |
Mapped Statements
ID |
Statement |
|
ID |
Statement |
34 | switch (zPend % 2) | | 57 | switch (zPend % 2) |
35 | | | 58 | |
36 | m_szptr[wr] = (short)RUNA; | | 59 | m_szptr[wr] = (short)RUNA; |
37 | | | 60 | |
38 | | | 61 | |
39 | | | 62 | |
40 | | | 63 | |
41 | m_szptr[wr] = (short)RUNB; | | 64 | m_szptr[wr] = (short)RUNB; |
42 | | | 65 | |
43 | | | 66 | |
44 | | | 67 | |
45 | ; | | | |
46 | if (zPend < 2) | | 68 | if (zPend < 2) |
47 | | | 69 | |
48 | zPend = (zPend - 2) / 2; | | 70 | zPend = (zPend - 2) / 2; |
Precondition Violations (3)
Row |
Violation |
1 | Statement break; without innermost loop |
2 | Statement break; without innermost loop |
3 | Clone fragment #1 returns variables wr, zPend , while Clone fragment #2 returns variables wr, zPend |