fix regression in 76cab18667
This commit is contained in:
+10
-3
@@ -1513,7 +1513,8 @@ namespace gourou
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Delete objects that reference EBX objects, except in trailer */
|
/* Delete objects that reference EBX objects,
|
||||||
|
except in trailer and objects that references Info */
|
||||||
for(it = objects.begin(); it != objects.end(); it++)
|
for(it = objects.begin(); it != objects.end(); it++)
|
||||||
{
|
{
|
||||||
uPDFParser::Object* object = *it;
|
uPDFParser::Object* object = *it;
|
||||||
@@ -1522,12 +1523,18 @@ namespace gourou
|
|||||||
{
|
{
|
||||||
uPDFParser::Reference* encrypt = (uPDFParser::Reference*)(*object)["Encrypt"];
|
uPDFParser::Reference* encrypt = (uPDFParser::Reference*)(*object)["Encrypt"];
|
||||||
|
|
||||||
|
if (object->hasKey("Info"))
|
||||||
|
{
|
||||||
|
object->deleteKey("Encrypt");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
/* Delete EBX objects */
|
/* Delete EBX objects */
|
||||||
for(ebxIt = ebxObjects.begin(); ebxIt != ebxObjects.end(); ebxIt++)
|
for(ebxIt = ebxObjects.begin(); ebxIt != ebxObjects.end(); ebxIt++)
|
||||||
{
|
{
|
||||||
if (encrypt->value() == (*ebxIt)->objectId())
|
if (encrypt->value() == (*ebxIt)->objectId())
|
||||||
{
|
{
|
||||||
GOUROU_LOG(ERROR, "Delete stream id " << object->objectId());
|
GOUROU_LOG(DEBUG, "Delete stream id " << object->objectId());
|
||||||
|
|
||||||
parser.removeObject(object);
|
parser.removeObject(object);
|
||||||
break;
|
break;
|
||||||
@@ -1540,7 +1547,7 @@ namespace gourou
|
|||||||
for(it = ebxObjects.begin(); it != ebxObjects.end(); it++)
|
for(it = ebxObjects.begin(); it != ebxObjects.end(); it++)
|
||||||
parser.removeObject(*it);
|
parser.removeObject(*it);
|
||||||
|
|
||||||
uPDFParser::Object& trailer = parser.getTrailer();
|
uPDFParser::Object& trailer = parser.getTrailer();
|
||||||
trailer.deleteKey("Encrypt");
|
trailer.deleteKey("Encrypt");
|
||||||
|
|
||||||
parser.write(filenameOut);
|
parser.write(filenameOut);
|
||||||
|
|||||||
Reference in New Issue
Block a user