aboutsummaryrefslogtreecommitdiffstats
path: root/src/proguard/optimize/info/NonPrivateMemberMarker.java
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2012-02-27 18:34:24 -0800
committerYing Wang <wangying@google.com>2012-02-27 18:34:24 -0800
commit9f606f95f03a75961498803e24bee6799a7c0885 (patch)
treea45f4d74feda9b76277a0c9ced55ad15d82248a1 /src/proguard/optimize/info/NonPrivateMemberMarker.java
parentcfead78069f3dc32998dc118ee08cab3867acea2 (diff)
downloadandroid_external_proguard-9f606f95f03a75961498803e24bee6799a7c0885.tar.gz
android_external_proguard-9f606f95f03a75961498803e24bee6799a7c0885.tar.bz2
android_external_proguard-9f606f95f03a75961498803e24bee6799a7c0885.zip
This reverts commit cfead78069f3dc32998dc118ee08cab3867acea2. Bug: 6079915
Diffstat (limited to 'src/proguard/optimize/info/NonPrivateMemberMarker.java')
-rw-r--r--src/proguard/optimize/info/NonPrivateMemberMarker.java16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/proguard/optimize/info/NonPrivateMemberMarker.java b/src/proguard/optimize/info/NonPrivateMemberMarker.java
index 23e33a9..d451643 100644
--- a/src/proguard/optimize/info/NonPrivateMemberMarker.java
+++ b/src/proguard/optimize/info/NonPrivateMemberMarker.java
@@ -2,7 +2,7 @@
* ProGuard -- shrinking, optimization, obfuscation, and preverification
* of Java bytecode.
*
- * Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
+ * Copyright (c) 2002-2009 Eric Lafortune (eric@graphics.cornell.edu)
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
@@ -77,9 +77,15 @@ implements ClassVisitor,
public void visitStringConstant(Clazz clazz, StringConstant stringConstant)
{
- // The referenced class member, if any, can never be made private,
- // even if it's in the same class.
- stringConstant.referencedMemberAccept(this);
+ Clazz referencedClass = stringConstant.referencedClass;
+
+ // Is it refering to another class or class member?
+ if (referencedClass != null &&
+ !referencedClass.equals(clazz))
+ {
+ // The referenced class member, if any, can never be made private.
+ stringConstant.referencedMemberAccept(this);
+ }
}
@@ -87,7 +93,7 @@ implements ClassVisitor,
{
Clazz referencedClass = refConstant.referencedClass;
- // Is it referring to a class member in another class?
+ // Is it refering to a class member in another class?
// The class member might be in another class, or
// it may be referenced through another class.
if (referencedClass != null &&