Skip to content

Commit

Permalink
Fixed the refactoring of classes where one of them belongs to the def…
Browse files Browse the repository at this point in the history
…ault package.

This is a fix for case 3550|1-2 found in project Columba-1.4 (CCFinder results)
CSVAddressbookImporter.importAddressbook(File):void
org.columba.addressbook.folder.importfilter.MozillaCSVAddressbookImporter.importAddressbook(File):void
  • Loading branch information
tsantalis committed Aug 2, 2016
1 parent e7c57bc commit 4293485
Showing 1 changed file with 11 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -554,7 +554,12 @@ private void extractClone() {
}
ClassObject commonSuperType = ASTReader.getSystemObject().getClassObject(commonSuperTypeOfSourceTypeDeclarations.getQualifiedName());
CompilationUnit compilationUnit = null;
if(sourceCompilationUnits.get(0).getPackage().resolveBinding().isEqualTo(sourceCompilationUnits.get(1).getPackage().resolveBinding())) {
PackageDeclaration package1 = sourceCompilationUnits.get(0).getPackage();
PackageDeclaration package2 = sourceCompilationUnits.get(1).getPackage();
if(package1 != null && package2 != null && package1.resolveBinding().isEqualTo(package2.resolveBinding())) {
compilationUnit = sourceCompilationUnits.get(0);
}
else if(package1 == null && package2 == null) {
compilationUnit = sourceCompilationUnits.get(0);
}
else if(commonSuperType != null) {
Expand Down Expand Up @@ -4107,7 +4112,11 @@ private void modifySourceCompilationUnitImportDeclarations(CompilationUnit compi
CompilationUnitChange change = compilationUnitChanges.get(sourceICompilationUnit);
ImportRewrite importRewrite = ImportRewrite.create(compilationUnit, true);
if(cloneInfo.intermediateClassPackageBinding != null) {
if(!compilationUnit.getPackage().resolveBinding().isEqualTo(cloneInfo.intermediateClassPackageBinding)) {
if(compilationUnit.getPackage() != null && !compilationUnit.getPackage().resolveBinding().isEqualTo(cloneInfo.intermediateClassPackageBinding)) {
importRewrite.addImport(cloneInfo.intermediateClassPackageBinding.getName() +
"." + cloneInfo.intermediateClassName);
}
else if(compilationUnit.getPackage() == null && cloneInfo.intermediateClassPackageBinding != null) {
importRewrite.addImport(cloneInfo.intermediateClassPackageBinding.getName() +
"." + cloneInfo.intermediateClassName);
}
Expand Down

0 comments on commit 4293485

Please sign in to comment.