From e76962f98e08fbe0ef12eb8608bf9b66bbb44dcc Mon Sep 17 00:00:00 2001
From: kramm <kramm>
Date: Tue, 22 Apr 2008 09:29:46 +0000
Subject: [PATCH] fixed double free in path handling

---
 lib/pdf/BitmapOutputDev.cc |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lib/pdf/BitmapOutputDev.cc b/lib/pdf/BitmapOutputDev.cc
index cedf06a..e551fd6 100644
--- a/lib/pdf/BitmapOutputDev.cc
+++ b/lib/pdf/BitmapOutputDev.cc
@@ -1274,7 +1274,9 @@ void BitmapOutputDev::beginTransparencyGroup(GfxState *state, double *bbox,
 #if (xpdfMajorVersion*10000 + xpdfMinorVersion*100 + xpdfUpdateVersion) < 30207
     GfxState*state1 = state->copy();
     GfxState*state2 = state->copy();
+    state1->setPath(0);
     state1->setPath(state->getPath()->copy());
+    state2->setPath(0);
     state2->setPath(state->getPath()->copy());
 #else
     GfxState*state1 = state->copy(gTrue);
@@ -1292,7 +1294,9 @@ void BitmapOutputDev::endTransparencyGroup(GfxState *state)
 #if (xpdfMajorVersion*10000 + xpdfMinorVersion*100 + xpdfUpdateVersion) < 30207
     GfxState*state1 = state->copy();
     GfxState*state2 = state->copy();
+    state1->setPath(0);
     state1->setPath(state->getPath()->copy());
+    state2->setPath(0);
     state2->setPath(state->getPath()->copy());
 #else
     GfxState*state1 = state->copy(gTrue);
-- 
1.7.10.4