PDFDoc::setDocInfoStringEntry(): free empty value string

Normally the ownership of value is passed on to the Object class. In case value
is an empty string, it doesn't happen, so we have to free it in order to have
a uniform behaviour managing memory and not to introduce memory leaks.
diff --git a/poppler/PDFDoc.cc b/poppler/PDFDoc.cc
index a51d8b6..f3383fc 100644
--- a/poppler/PDFDoc.cc
+++ b/poppler/PDFDoc.cc
@@ -612,6 +612,9 @@
 void PDFDoc::setDocInfoStringEntry(const char *key, GooString *value)
 {
   GBool removeEntry = !value || value->getLength() == 0;
+  if (removeEntry) {
+    delete value;
+  }
 
   Object infoObj;
   getDocInfo(&infoObj);