diff -urN apertium-3.1.0-orig/apertium/reformat.xsl apertium-3.1.0/apertium/reformat.xsl
--- apertium-3.1.0-orig/apertium/reformat.xsl	2008-11-25 15:39:55.000000000 +0000
+++ apertium-3.1.0/apertium/reformat.xsl	2012-11-28 01:19:39.000000000 +0000
@@ -73,7 +73,9 @@
 {
   memconv.append(multibyte, length); 
   int tam = memconv.size();
-  wchar_t *retval = new wchar_t[tam];
+  if (memconv == "")
+    return L"";
+  wchar_t *retval = new wchar_t[tam+1];
   size_t l = mbstowcs(retval, memconv.c_str(), tam);
 
   if(l == ((size_t) -1))
@@ -88,8 +90,9 @@
   {
     memconv = "";
     retval[l] = 0;
-	wstring ret = retval;
-	delete[] retval;
+    wstring ret = retval;
+    if (retval != NULL)
+      delete[] retval;
     return ret;
   }
 }
