--- gateway/gwlib/octstr.c	2002-04-28 12:28:33.000000000 +0300
+++ gateway/gwlib/octstr.c	2002-06-06 15:01:58.000000000 +0300
@@ -354,6 +354,8 @@
 char *octstr_get_cstr_real(Octstr *ostr, const char *file, long line, 
     	    	    	   const char *func)
 {
+    if (!ostr)
+      return "<NULL>";
     seems_valid_real(ostr, file, line, func);
     if (ostr->len == 0)
         return "";
@@ -1973,12 +1975,16 @@
 
     case 'S':
         new = octstr_duplicate(va_arg(VALST(args), Octstr *));
+        if (!new)
+	    new = octstr_imm("<NULL>");
         if (format->has_prec)
             octstr_truncate(new, format->prec);
         break;
 
     case 'E':
         new = octstr_duplicate(va_arg(VALST(args), Octstr *));
+        if (!new)
+	    new = octstr_imm("<NULL>");
 	octstr_url_encode(new);
 	/*
 	 * note: we use blind truncate - encoded character can get cut half-way.
