diff options
author | Po Lu <luangruo@yahoo.com> | 2022-01-01 08:54:51 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-01-01 08:54:51 +0800 |
commit | 4d1968b4c9eb1d42c125b4536e3b4543b91f3634 (patch) | |
tree | 0216df11d751d8a93235b124e8e62d2ba398c19d /src/print.c | |
parent | 4521a3a19c123c43f4bb7ad21a94456434ef81f4 (diff) | |
download | emacs-4d1968b4c9eb1d42c125b4536e3b4543b91f3634.tar.gz emacs-4d1968b4c9eb1d42c125b4536e3b4543b91f3634.tar.bz2 emacs-4d1968b4c9eb1d42c125b4536e3b4543b91f3634.zip |
Print dead xwidgets specially
* src/print.c (print_vectorlike) <PVEC_XWIDGET>: Print "killed
xwidget" for dead xwidgets.
Diffstat (limited to 'src/print.c')
-rw-r--r-- | src/print.c | 19 |
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 |