driver: New function output_log_nocopy().
[pspp] / src / output / driver.c
index 33473a01424705703d5dd92b44a6e6912edbd00c..f627e31248d69c1398739bd369307ec94dcd86fc 100644 (file)
@@ -91,7 +91,7 @@ put_strftime (const char *key, const char *format,
 void
 output_engine_push (void)
 {
-  struct output_engine *e = xzalloc (sizeof (*e));
+  struct output_engine *e = XZALLOC (struct output_engine);
 
   llx_init (&e->drivers);
 
@@ -366,9 +366,21 @@ output_log (const char *format, ...)
   char *s = xvasprintf (format, args);
   va_end (args);
 
+  output_log_nocopy (s);
+}
+
+void
+output_log_nocopy (char *s)
+{
   output_submit (text_item_create_nocopy (TEXT_ITEM_LOG, s, NULL));
 }
 
+const char *
+output_get_title (void)
+{
+  return engine_stack_top ()->title;
+}
+
 void
 output_set_title (const char *title)
 {
@@ -377,6 +389,12 @@ output_set_title (const char *title)
   output_set_title__ (e, &e->title, title);
 }
 
+const char *
+output_get_subtitle (void)
+{
+  return engine_stack_top ()->subtitle;
+}
+
 void
 output_set_subtitle (const char *subtitle)
 {