johnzon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Sautter (JIRA) <>
Subject [jira] [Created] (JOHNZON-215) JsonReader.readObject() calls Reader.close()
Date Mon, 17 Jun 2019 10:09:00 GMT
Jörg Sautter created JOHNZON-215:

             Summary: JsonReader.readObject() calls Reader.close()
                 Key: JOHNZON-215
             Project: Johnzon
          Issue Type: Bug
          Components: Core
    Affects Versions: 1.1.12
            Reporter: Jörg Sautter

We try to use the JsonReader to read a Reader based on a channel holding an exclusive file
lock and later on we truncate the channel, write the content and close the channel / release
the lock.

As soon as we call JsonReader.readObject() the reader and the channel is closed and the file
locks are gone. This should - from our point of view - not happen at this point, only a explicit
call to .close() should close the underlying resources.

This is a code snippet to reproduce the issue:

{{StringReader sr = new StringReader("{}");}}
{{ Reader wrapper = new Reader() {}}
{{ @Override}}
{{ public int read(char[] cbuf, int off, int len) throws IOException}}{{{}}

{{return, off, len);}}


{{ public void close() throws IOException}}{{{}}

{{throw new UnsupportedOperationException("someone closed the stream!");}}




This message was sent by Atlassian JIRA

View raw message