[
https://issues.apache.org/jira/browse/PDFBOX-2685?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tilman Hausherr updated PDFBOX-2685:
------------------------------------
Description:
>From [~torakiki]:
They are cached and they are mutable so this:
{code}
COSInteger cosint = COSInteger.get(10);
cosint.setValue(50);
//lets move to a totally unrelated part of my software
System.out.println(COSInteger.get(10));
{code}
prints COSInteger(50) so basically I ask for a 10 and get a 50, isn't it weird
(and error prone)? ... or the way around, I call cosint.setValue(50) at
some point in the software and that makes it a 50 everywhere I used
COSInteger.get(10).
That's of course also true for the other mutable attributes setDirect and
setNeedToBeUpdate.
was:
>From [~avacondio]:
They are cached and they are mutable so this:
{code}
COSInteger cosint = COSInteger.get(10);
cosint.setValue(50);
//lets move to a totally unrelated part of my software
System.out.println(COSInteger.get(10));
{code}
prints COSInteger(50) so basically I ask for a 10 and get a 50, isn't it weird
(and error prone)? ... or the way around, I call cosint.setValue(50) at
some point in the software and that makes it a 50 everywhere I used
COSInteger.get(10).
That's of course also true for the other mutable attributes setDirect and
setNeedToBeUpdate.
> COSInteger is mutable
> ---------------------
>
> Key: PDFBOX-2685
> URL: https://issues.apache.org/jira/browse/PDFBOX-2685
> Project: PDFBox
> Issue Type: Bug
> Affects Versions: 1.8.8, 1.8.9, 2.0.0
> Reporter: Tilman Hausherr
> Fix For: 2.0.0
>
>
> From [~torakiki]:
> They are cached and they are mutable so this:
> {code}
> COSInteger cosint = COSInteger.get(10);
> cosint.setValue(50);
> //lets move to a totally unrelated part of my software
> System.out.println(COSInteger.get(10));
> {code}
> prints COSInteger(50) so basically I ask for a 10 and get a 50, isn't it weird
> (and error prone)? ... or the way around, I call cosint.setValue(50) at
> some point in the software and that makes it a 50 everywhere I used
> COSInteger.get(10).
> That's of course also true for the other mutable attributes setDirect and
> setNeedToBeUpdate.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]