all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: nljlistbox2@gmail.com (N. Jackson)
To: Eli Zaretskii <eliz@gnu.org>
Cc: 25851@debbugs.gnu.org
Subject: bug#25851: 25.2; GTK warning when starting Emacs when desktop file has more than one frame
Date: Fri, 24 Feb 2017 11:09:22 -0500	[thread overview]
Message-ID: <874lzjsh8t.fsf@moondust.localdomain> (raw)
In-Reply-To: <83o9xrsmrd.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 24 Feb 2017 16:10:14 +0200")

At 16:10 +0200 on Friday 2017-02-24, Eli Zaretskii wrote:
>
> So the question now becomes: how is invoking
> x-create-frame-with-faces via frameset-restore is different from
> the same operation invoked, say, via "C-x 5 b"? (I understand
> that the latter doesn't cause GTK to emit the warning, right?)

Right. And the answer is that with `C-x 5 2' (and `C-x 5 b'),
while `xg_set_geometry' is called, the body of it seems to be
skipped [you had better check my use of GDB, here because the
results confuse me so maybe I'm using it wrong] so
`gtk_window_parse_geometry' never gets called.

For convenience, the full code, with line numbers, of
`xg_set_geometry' is:

  (gdb) list gtkutil.c:780
  775     static void
  776     xg_set_geometry (struct frame *f)
  777     {
  778       if (f->size_hint_flags & (USPosition | PPosition))
  779         {
  780           int left = f->left_pos;
  781           int xneg = f->size_hint_flags & XNegative;
  782           int top = f->top_pos;
  783           int yneg = f->size_hint_flags & YNegative;
  784           char geom_str[sizeof "=x--" + 4 * INT_STRLEN_BOUND (int)];
  (gdb) list +20
  800                                   | G_LOG_FLAG_RECURSION, my_log_handler, NULL);
  801
  802           if (!gtk_window_parse_geometry (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)),
  803                                           geom_str))
  804             fprintf (stderr, "Failed to parse: '%s'\n", geom_str);
  805
  806           g_log_remove_handler ("Gtk", id);
  807         }
  808     }
  809

This is my interaction with GDB after `C-x 5 2':

  Thread 1 "emacs" hit Breakpoint 3, xg_set_geometry (f=0x386d000) at gtkutil.c:778
  778       if (f->size_hint_flags & (USPosition | PPosition))
  (gdb) print f->size_hint_flags 
  $3 = 0
  (gdb) print USPosition
  No symbol "USPosition" in current context.
  (gdb) print PPosition
  No symbol "PPosition" in current context.
  (gdb) print (USPosition | PPosition)
  No symbol "USPosition" in current context.
  (gdb) print (f->size_hint_flags & (USPosition | PPosition))
  No symbol "USPosition" in current context.
  (gdb) n
  808     }
  (gdb)

Is my syntax wrong when I try to get the values?

Thanks.

N.





  reply	other threads:[~2017-02-24 16:09 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-23 16:08 bug#25851: 25.2; GTK warning when starting Emacs when desktop file has more than one frame N. Jackson
2017-02-23 16:24 ` Eli Zaretskii
2017-02-24  2:33   ` N. Jackson
2017-02-24  8:07     ` Eli Zaretskii
2017-02-24 13:41       ` N. Jackson
2017-02-24 13:53         ` N. Jackson
2017-02-24 14:10         ` Eli Zaretskii
2017-02-24 16:09           ` N. Jackson [this message]
2017-02-24 20:28             ` N. Jackson
2017-02-25  8:17               ` Eli Zaretskii
2017-02-26 22:41                 ` N. Jackson
2017-02-27  0:31                   ` N. Jackson
2017-02-27 16:18                     ` Eli Zaretskii
2017-02-27 18:26                       ` N. Jackson
2017-02-27 18:37                         ` Eli Zaretskii
2017-02-28  9:46                         ` martin rudalics
2017-03-01 20:05                           ` N. Jackson
2017-03-23  8:00                             ` martin rudalics
2017-03-23 14:11                               ` N. Jackson
2017-03-24  9:01                                 ` martin rudalics
2017-03-24 20:28                                   ` N. Jackson
2017-03-25  6:26                                     ` Eli Zaretskii
2017-03-28 13:15                                       ` N. Jackson
2017-03-29  7:36                                         ` martin rudalics
2017-03-25  9:25                                     ` martin rudalics
2017-04-27 19:28                                     ` N. Jackson
2017-04-11  6:49                                   ` martin rudalics
2017-04-27 19:55                                     ` N. Jackson
2017-04-29 10:30                                       ` martin rudalics
2017-04-29 19:32                                         ` N. Jackson
2017-04-30  8:32                                           ` martin rudalics
2017-04-30 16:13                                             ` N. Jackson
2017-04-30 19:36                                               ` martin rudalics
2017-02-28  9:46                       ` martin rudalics
2017-02-28 15:51                         ` Eli Zaretskii
2017-02-28 18:42                           ` martin rudalics
2017-02-28 18:50                             ` Eli Zaretskii
2017-03-01  8:29                               ` martin rudalics
2017-03-01 16:18                                 ` Eli Zaretskii
2017-03-01 19:36                                   ` martin rudalics
2017-03-01 19:47                                     ` Eli Zaretskii
2017-03-01 20:11                                       ` Eli Zaretskii
2017-03-02 11:00                                       ` martin rudalics
2017-03-02 15:09                                         ` Eli Zaretskii
2017-03-02 17:57                                           ` martin rudalics
2017-03-02 20:10                                             ` Eli Zaretskii
2017-03-03  8:13                                               ` martin rudalics
2017-03-03  8:25                                                 ` Eli Zaretskii
2017-03-01 20:16                                     ` N. Jackson
2017-03-03  8:13                                       ` martin rudalics
2017-03-03 13:05                                         ` N. Jackson
2017-03-03 14:24                                           ` martin rudalics
2017-03-06 18:25                                             ` N. Jackson
2017-03-06 18:44                                               ` martin rudalics
2017-02-25  8:21               ` martin rudalics
2017-02-26 22:47                 ` N. Jackson
2017-02-27  2:22                   ` N. Jackson
2017-02-27  8:04                     ` martin rudalics
2017-02-27 17:56                       ` N. Jackson
2017-02-28  9:46                         ` martin rudalics
2017-02-25  7:55             ` Eli Zaretskii
2017-02-26 22:09               ` N. Jackson
2017-03-23  7:59 ` martin rudalics
2017-03-23 13:47   ` Drew Adams
2017-03-23 14:34     ` N. Jackson
2017-03-24  9:01     ` martin rudalics
2017-03-24 20:37       ` N. Jackson
2017-03-25  9:25         ` martin rudalics
2017-03-23 15:24   ` Eli Zaretskii
2017-03-24  9:02     ` martin rudalics
2017-04-27 19:45 ` N. Jackson
2017-04-27 19:52   ` Noam Postavsky
2017-04-28 14:15     ` N. Jackson
2017-04-28 14:25   ` N. Jackson
2017-09-25 16:31 ` N. Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874lzjsh8t.fsf@moondust.localdomain \
    --to=nljlistbox2@gmail.com \
    --cc=25851@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.