GNU bug report logs - #30019
26.0.90; Invalid specification of parent-frame with desktop-read

Previous Next

Package: emacs;

Reported by: Aaron Jensen <aaronjensen <at> gmail.com>

Date: Mon, 8 Jan 2018 02:50:02 UTC

Severity: normal

Found in version 26.0.90

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 30019 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Aaron Jensen <aaronjensen <at> gmail.com>, 30019 <at> debbugs.gnu.org
Subject: Re: bug#30019: 26.0.90; Invalid specification of parent-frame with
 desktop-read
Date: Mon, 08 Jan 2018 10:53:17 +0100
>   I'm not sure of the exact repro, but hopefully the below stack trace
> will help. After playing around with child frames on macOS while running
> desktop-mode, if I restart emacs, I end up with this error during
> "desktop-read"
>
> Debugger entered--Lisp error: (error "Invalid specification of ‘parent-frame’")
>    modify-frame-parameters(#<frame Emacs 0x11571e7d0> ((parent-frame .
> #<frame *Warnings* 0x10982e5b0>)))
>    set-frame-parameter(#<frame Emacs 0x11571e7d0> parent-frame #<frame
> *Warnings* 0x10982e5b0>)
>    frameset--restore-frame(((minibuffer . #<window 4 on  *Minibuf-0*>)
[...]
> (frameset--parent-frame .
> "8810-6104-369C-7DEE") (frameset--mini nil . "8810-6104-369C-7DEE")

`frameset--restore-frame' has this

    (let* ((frame-id (frame-parameter frame 'frameset--parent-frame))
           (parent-frame
            (and frame-id (frameset-frame-with-id frame-id))))
      (when (frame-live-p parent-frame)
        (set-frame-parameter frame 'parent-frame parent-frame)))

and x_set_parent_frame has

  if (!NILP (new_value)
      && (!FRAMEP (new_value)
	  || !FRAME_LIVE_P (p = XFRAME (new_value))
	  || !FRAME_X_P (p)))
    {
      store_frame_param (f, Qparent_frame, old_value);
      error ("Invalid specification of `parent-frame'");

When you put a breakpoint at the last line I suppose it's the
FRAME_X_P (p) call that failed.  Can you confirm that?

If so, we would not have a window system window for the parent frame
yet and we might have to wait "somehow" until it has been created.
Too bad.

It might be interesting to find out whether `frameset--mini' has the
same problem and, if not, why.  After all the minibuffer frame is the
same as the parent frame.

martin





This bug report was last modified 4 years and 347 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.