emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: eww-update-header-line: Possible breakage after d39ae6f5860ecf6ebbee


From: T.V Raman
Subject: Re: eww-update-header-line: Possible breakage after d39ae6f5860ecf6ebbeedc08bf3aafa5befaf510
Date: Sun, 13 Sep 2020 09:43:13 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Lars Ingebrigtsen <larsi@gnus.org> writes:
After pulling
dc01b992e2 * Make the eww header work again even if the title is nil
and building, I still find eww-update-header-line to be broken, stack
trace attached. The issue doesn't repro if I load eww.el from emacs-27.1

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  (propertize nil face variable-pitch)
  (eww-update-header-line-format)
  (eval (eww-update-header-line-format) t)
  (#f(compiled-function (exp &optional insert-value no-truncate 
char-print-limit) "Evaluate EXP and print value in the echo area.\nWhen called 
interactively, read an Emacs Lisp expression and\nevaluate it.  Value is also 
consed on to front of the variable\n`values'.  Optional argument INSERT-VALUE 
non-nil (interactively,\nwith a non `-' prefix argument) means insert the 
result into the\ncurrent buffer instead of printing it in the echo 
area.\n\nNormally, this function truncates long output according to the\nvalue 
of the variables `eval-expression-print-length' 
and\n`eval-expression-print-level'.  When NO-TRUNCATE is\nnon-nil 
(interactively, with a prefix argument of zero), however,\nthere is no such 
truncation.\n\nIf the resulting value is an integer, and CHAR-PRINT-LIMIT 
is\nnon-nil (interactively, unless given a non-zero prefix argument)\nit will 
be printed in several additional formats (octal,\nhexadecimal, and character).  
The character format is used only\nif the value is below CHAR-PRINT-LIMIT 
(interactively, if the\nprefix argument is -1 or the value doesn't 
exceed\n`eval-expression-print-maximum-character').\n\nRuns the hook 
`eval-expression-minibuffer-setup-hook' on entering the\nminibuffer.\n\nIf 
`eval-expression-debug-on-error' is non-nil, which is the default,\nthis 
command arranges for all errors to enter the debugger." (interactive 
#f(compiled-function () #<bytecode 0xbfa038de222893f>)) #<bytecode 
0xf1a46df5f463156>) (eww-update-header-line-format) nil nil 127)
  (ad-Advice-eval-expression #f(compiled-function (exp &optional insert-value 
no-truncate char-print-limit) "Evaluate EXP and print value in the echo 
area.\nWhen called interactively, read an Emacs Lisp expression and\nevaluate 
it.  Value is also consed on to front of the variable\n`values'.  Optional 
argument INSERT-VALUE non-nil (interactively,\nwith a non `-' prefix argument) 
means insert the result into the\ncurrent buffer instead of printing it in the 
echo area.\n\nNormally, this function truncates long output according to 
the\nvalue of the variables `eval-expression-print-length' 
and\n`eval-expression-print-level'.  When NO-TRUNCATE is\nnon-nil 
(interactively, with a prefix argument of zero), however,\nthere is no such 
truncation.\n\nIf the resulting value is an integer, and CHAR-PRINT-LIMIT 
is\nnon-nil (interactively, unless given a non-zero prefix argument)\nit will 
be printed in several additional formats (octal,\nhexadecimal, and character).  
The character format is used only\nif the value is below CHAR-PRINT-LIMIT 
(interactively, if the\nprefix argument is -1 or the value doesn't 
exceed\n`eval-expression-print-maximum-character').\n\nRuns the hook 
`eval-expression-minibuffer-setup-hook' on entering the\nminibuffer.\n\nIf 
`eval-expression-debug-on-error' is non-nil, which is the default,\nthis 
command arranges for all errors to enter the debugger." (interactive 
#f(compiled-function () #<bytecode 0xbfa038de222893f>)) #<bytecode 
0xf1a46df5f463156>) (eww-update-header-line-format) nil nil 127)
  (apply ad-Advice-eval-expression #f(compiled-function (exp &optional 
insert-value no-truncate char-print-limit) "Evaluate EXP and print value in the 
echo area.\nWhen called interactively, read an Emacs Lisp expression 
and\nevaluate it.  Value is also consed on to front of the variable\n`values'.  
Optional argument INSERT-VALUE non-nil (interactively,\nwith a non `-' prefix 
argument) means insert the result into the\ncurrent buffer instead of printing 
it in the echo area.\n\nNormally, this function truncates long output according 
to the\nvalue of the variables `eval-expression-print-length' 
and\n`eval-expression-print-level'.  When NO-TRUNCATE is\nnon-nil 
(interactively, with a prefix argument of zero), however,\nthere is no such 
truncation.\n\nIf the resulting value is an integer, and CHAR-PRINT-LIMIT 
is\nnon-nil (interactively, unless given a non-zero prefix argument)\nit will 
be printed in several additional formats (octal,\nhexadecimal, and character).  
The character format is used only\nif the value is below CHAR-PRINT-LIMIT 
(interactively, if the\nprefix argument is -1 or the value doesn't 
exceed\n`eval-expression-print-maximum-character').\n\nRuns the hook 
`eval-expression-minibuffer-setup-hook' on entering the\nminibuffer.\n\nIf 
`eval-expression-debug-on-error' is non-nil, which is the default,\nthis 
command arranges for all errors to enter the debugger." (interactive 
#f(compiled-function () #<bytecode 0xbfa038de222893f>)) #<bytecode 
0xf1a46df5f463156>) ((eww-update-header-line-format) nil nil 127))
  (eval-expression (eww-update-header-line-format) nil nil 127)
  (#<subr funcall-interactively> eval-expression 
(eww-update-header-line-format) nil nil 127)
  (apply #<subr funcall-interactively> eval-expression 
((eww-update-header-line-format) nil nil 127))
  (ad-Advice-funcall-interactively #<subr funcall-interactively> 
eval-expression (eww-update-header-line-format) nil nil 127)
  (apply ad-Advice-funcall-interactively #<subr funcall-interactively> 
(eval-expression (eww-update-header-line-format) nil nil 127))
  (funcall-interactively eval-expression (eww-update-header-line-format) nil 
nil 127)
  (#<subr call-interactively> eval-expression nil nil)
  (ad-Advice-call-interactively #<subr call-interactively> eval-expression nil 
nil)
  (apply ad-Advice-call-interactively #<subr call-interactively> 
(eval-expression nil nil))
  (call-interactively eval-expression nil nil)
  (command-execute eval-expression)

> "T.V Raman" <raman@google.com> writes:
>
>> In addition to the minibuffer eval results shown earlier,
>>
>> (propertize (plist-get eww-data :title) 'face 'variable-pitch)
>> thorws the
>> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>> which is the same error that eww-update-header-line threw,
>> while
>> (plist-get eww-data :title)
>> returns a string,
>>
>> Both of the above evaluated in the relevant stack frame via "e"
>
> If it's a bug somewhere, it sounds like a bug in the `e' command?
>
> In any case, I did push a fix for the title thing, so the bug should no
> longer be present in Emacs 28 now.

-- 
?7?4 Id: kg:/m/0285kf1  ?0?8



reply via email to

[Prev in Thread] Current Thread [Next in Thread]