java.lang/258: java.lang.Class.isAssignableFrom has various error conditions

WarrenL@redhat.com WarrenL@redhat.com
Tue Jun 13 16:30:00 GMT 2000


>Number:         258
>Category:       java.lang
>Synopsis:       java.lang.Class.isAssignableFrom has various error conditions
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    tromey
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jun 13 16:30:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Warren Levy
>Release:        libgcj-2.95.1
>Organization:
>Environment:

>Description:
java.lang.Class.isAssignableFrom fails to properly determine if a class is a superclass of the class represented by this Class object in certain situations.
A test case has been submitted that includes the failing cases (as well as being a regression test for the passing cases).
>How-To-Repeat:
Run the attached test against JDK 1.1 or run the Class_1.java test in the libjava/testsuite/libjava.lang dir.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="Class_1.java"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Class_1.java"

Y2xhc3MgQyB7fQpjbGFzcyBEIGV4dGVuZHMgQyBpbXBsZW1lbnRzIEkge30KaW50ZXJmYWNlIEkg
e30KaW50ZXJmYWNlIEogZXh0ZW5kcyBJIHt9CgpwdWJsaWMgY2xhc3MgQ2xhc3NfMQp7CiAgc3Rh
dGljIHZvaWQgcHJpbnRJc0Fzc2lnbmFibGVGcm9tKENsYXNzIGEsIENsYXNzIGIsIGJvb2xlYW4g
YykKICAgIHsKICAgICAgLy8gVGhlIGZpZWxkICdjJyBjYW4gYmUgdmlld2VkIHRvIHNlZSB0aGUg
ZXhwZWN0ZWQgdmFsdWUuCiAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihhLmlzQXNzaWduYWJsZUZy
b20oYikpOwogICAgfQoKICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nIGFyZ1tdKQog
IHsKICAgIFN5c3RlbS5vdXQucHJpbnRsbigiVGVzdGluZyBjbGFzcyBgQ2xhc3NfMScuLi4iKTsK
ICAgIHByaW50SXNBc3NpZ25hYmxlRnJvbShDLmNsYXNzLCBPYmplY3QuY2xhc3MsIGZhbHNlKTsK
ICAgIHByaW50SXNBc3NpZ25hYmxlRnJvbShDLmNsYXNzLCBDLmNsYXNzLCB0cnVlKTsKICAgIHBy
aW50SXNBc3NpZ25hYmxlRnJvbShDLmNsYXNzLCBELmNsYXNzLCB0cnVlKTsKICAgIHByaW50SXNB
c3NpZ25hYmxlRnJvbShELmNsYXNzLCBDLmNsYXNzLCBmYWxzZSk7CgogICAgcHJpbnRJc0Fzc2ln
bmFibGVGcm9tKE9iamVjdC5jbGFzcywgaW50W10uY2xhc3MsIHRydWUpOwogICAgcHJpbnRJc0Fz
c2lnbmFibGVGcm9tKGludFtdLmNsYXNzLCBpbnRbXS5jbGFzcywgdHJ1ZSk7CiAgICBwcmludElz
QXNzaWduYWJsZUZyb20oQ1tdLmNsYXNzLCBELmNsYXNzLCBmYWxzZSk7CiAgICBwcmludElzQXNz
aWduYWJsZUZyb20oQ1tdLmNsYXNzLCBEW10uY2xhc3MsIHRydWUpOwogICAgLy8gS25vd24gY29t
cGlsZXIgbGltaXRhdGlvbiBwcmV2ZW50cyBuZXh0IGNhc2UgZnJvbSBjb21waWxpbmcuCiAgICAv
LyBwcmludElzQXNzaWduYWJsZUZyb20oQ1tdLmNsYXNzLCBDW11bXS5jbGFzcywgZmFsc2UpOwog
ICAgU3lzdGVtLm91dC5wcmludGxuKCJwcmludElzQXNzaWduYWJsZUZyb20oQ1tdLmNsYXNzLCBD
W11bXS5jbGFzcywgZmFsc2UpOyIgKwogICAgICAiIGNhc2UgdW5jb21waWxhYmxlIGR1ZSB0byBr
bm93biBjb21waWxlciBsaW1pdGF0aW9uLiIpOwoKICAgIHByaW50SXNBc3NpZ25hYmxlRnJvbShP
YmplY3QuY2xhc3MsIEkuY2xhc3MsIHRydWUpOwogICAgcHJpbnRJc0Fzc2lnbmFibGVGcm9tKEku
Y2xhc3MsIEkuY2xhc3MsIHRydWUpOwogICAgcHJpbnRJc0Fzc2lnbmFibGVGcm9tKEQuY2xhc3Ms
IEkuY2xhc3MsIGZhbHNlKTsKICAgIHByaW50SXNBc3NpZ25hYmxlRnJvbShJLmNsYXNzLCBELmNs
YXNzLCB0cnVlKTsKCiAgICBwcmludElzQXNzaWduYWJsZUZyb20oRC5jbGFzcywgSi5jbGFzcywg
ZmFsc2UpOwogICAgcHJpbnRJc0Fzc2lnbmFibGVGcm9tKEouY2xhc3MsIEQuY2xhc3MsIGZhbHNl
KTsKCiAgICBwcmludElzQXNzaWduYWJsZUZyb20oSS5jbGFzcywgSi5jbGFzcywgdHJ1ZSk7CiAg
ICBwcmludElzQXNzaWduYWJsZUZyb20oSi5jbGFzcywgSi5jbGFzcywgdHJ1ZSk7CiAgICBwcmlu
dElzQXNzaWduYWJsZUZyb20oSi5jbGFzcywgSS5jbGFzcywgZmFsc2UpOwoKICAgIC8vIFJldHVy
bnMgdHJ1ZSBpZmYgYm90aCBDbGFzcyBvYmplY3RzIGFyZSBlcXVhbC4KICAgIHByaW50SXNBc3Np
Z25hYmxlRnJvbShsb25nLmNsYXNzLCBsb25nLmNsYXNzLCB0cnVlKTsKCiAgICAvLyBEb2VzIG5v
dCB3b3JrIGZvciBwcmltaXRpdmUgdHlwZXMgaW4gZ2VuZXJhbC4KICAgIHByaW50SXNBc3NpZ25h
YmxlRnJvbShsb25nLmNsYXNzLCBpbnQuY2xhc3MsIGZhbHNlKTsKICB9Cn0K


More information about the Java-prs mailing list