You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Andreas Lehmkühler (JIRA)" <ji...@apache.org> on 2015/02/14 19:14:11 UTC
[jira] [Comment Edited] (PDFBOX-2685) COSInteger is mutable
[ https://issues.apache.org/jira/browse/PDFBOX-2685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14321574#comment-14321574 ]
Andreas Lehmkühler edited comment on PDFBOX-2685 at 2/14/15 6:14 PM:
---------------------------------------------------------------------
As direct and indirect integer values are needed e.g. as length values COSInteger must not be mutable. IMHO, we have to remove the whole caching.
WDYT?
was (Author: lehmi):
As direct and indirect integer values are needed e.g. as length values COSInteger must not mutable. IMHO, we have to remove the whole caching.
WDYT?
> 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: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org