summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/print.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/print.c b/src/print.c
index 214f1d12c11..9f3d8317ae3 100644
--- a/src/print.c
+++ b/src/print.c
@@ -1524,16 +1524,21 @@ print_vectorlike (Lisp_Object obj, Lisp_Object printcharfun, bool escapeflag,
case PVEC_XWIDGET:
#ifdef HAVE_XWIDGETS
{
+ if (NILP (XXWIDGET (obj)->buffer))
+ print_c_string ("#<killed xwidget>", printcharfun);
+ else
+ {
#ifdef USE_GTK
- int len = sprintf (buf, "#<xwidget %u %p>",
- XXWIDGET (obj)->xwidget_id,
- XXWIDGET (obj)->widget_osr);
+ int len = sprintf (buf, "#<xwidget %u %p>",
+ XXWIDGET (obj)->xwidget_id,
+ XXWIDGET (obj)->widget_osr);
#else
- int len = sprintf (buf, "#<xwidget %u %p>",
- XXWIDGET (obj)->xwidget_id,
- XXWIDGET (obj)->xwWidget);
+ int len = sprintf (buf, "#<xwidget %u %p>",
+ XXWIDGET (obj)->xwidget_id,
+ XXWIDGET (obj)->xwWidget);
#endif
- strout (buf, len, len, printcharfun);
+ strout (buf, len, len, printcharfun);
+ }
break;
}
#else