unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Andy Moreton <andrewjmoreton@googlemail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: emacs-21.1.94 crash in gnus on Windows
Date: Tue, 16 Mar 2010 12:53:51 +0000	[thread overview]
Message-ID: <4B9F7F5F.1040504@gmail.com> (raw)
In-Reply-To: <E1NrU5H-0000a7-Rj@fencepost.gnu.org>

On 16/03/2010 10:33, Eli Zaretskii wrote:
>>  From: Andy Moreton<andrewjmoreton@gmail.com>
>>  Date: Mon, 15 Mar 2010 23:40:27 +0000
>>
>>  I've built 21.1.94 pretest on WinXP SP3 with MinGW gcc, and I'm seeing
>>  a repeatable crash in gnus. Running emacs under gdb I managed to capture
>>  a crash, with the following results:
>>
>>  Program received signal SIGSEGV, Segmentation fault.
>>  0x0102ef33 in pos_visible_p (w=0x2fa6e00, charpos=0x22fa, x=0x82eef8, y=0x82eef4, rtop=0x82ef08,
>>      rbot=0x82ef04, rowh=0x82ef00, vpos=0x82eefc) at xdisp.c:1397
>>  1397&&  (!BUFFERP (glyph->object)
>
> Thank you for your report.
>
>>  Please let me know what other info/testing is needed to help fix this.
>
> First, please file a bug report with this information.

I've sent a bug report (from another machine after recreating the crash).

> Second, please type "bt full" and post the results.
>
> Third, if this is an optimized build, please build Emacs without
> optimizations, and when the crash happens again, please type "bt full"
> and send the results.
>
> Finally, could you tell what kind of text is at character position
> (in this case, 0x22fa) with which pos_visible_p is called when it
> crashes?  Are there any unusual text properties there, like invisible
> text, ellipsis (which stands for hidden text), or something similar?

emacs was configured on both machines with "--no-opt". I've added details of 
the crash in the bug report below.

Program received signal SIGSEGV, Segmentation fault.
0x01030355 in pos_visible_p (w=0x307c800, charpos=0x5ad, x=0x82f0c4,
y=0x82f0c0, rtop=0x82f0d8,
      rbot=0x82f0d4, rowh=0x82f0d0, vpos=0x82f0cc) at xdisp.c:1396
1396                      for (; glyph < end
(gdb) warning: reader_thread.SetEvent failed with 6 for fd -1

warning: reader_thread.SetEvent failed with 6 for fd -1

warning: reader_thread.SetEvent failed with 6 for fd -1

warning: reader_thread.SetEvent failed with 6 for fd -1

warning: reader_thread.SetEvent failed with 6 for fd -1

bt full
Reading in symbols for window.c...done.
Reading in symbols for eval.c...done.
Reading in symbols for bytecode.c...done.
Reading in symbols for callint.c...done.
Reading in symbols for keyboard.c...done.
#0  0x01030355 in pos_visible_p (w=0x307c800, charpos=0x5ad, x=0x82f0c4,
y=0x82f0c0,
      rtop=0x82f0d8, rbot=0x82f0d4, rowh=0x82f0d0, vpos=0x82f0cc) at xdisp.c:1396
          row = 0x380a098
          glyph = 0x38d0020
          end = 0x38d0ea0
          x = 0x0
          window = 0x307c805
          prop = 0x33fb62a
          top_y = 0x62
          it_method = GET_FROM_BUFFER
          window_top_y = 0xe
          top_x = 0x333
          bottom_y = 0x70
          it = {
            window = 0x307c805,
            w = 0x307c800,
            f = 0x307c000,
            method = GET_FROM_BUFFER,
            stop_charpos = 0x719,
            end_charpos = 0x719,
            s = 0x0,
            string_nchars = 0x0,
            region_beg_charpos = 0xffffffff,
            region_end_charpos = 0xffffffff,
            redisplay_end_trigger_charpos = 0x0,
            multibyte_p = 0x1,
            header_line_p = 0x1,
            string_from_display_prop_p = 0x0,
            ellipsis_p = 0x0,
            avoid_cursor_p = 0x0,
            dp = 0x48b4e00,
            dpvec = 0x0,
            dpend = 0x13da13c,
            dpvec_char_len = 0x0,
            dpvec_face_id = 0xffffffff,
            saved_face_id = 0x0,
            ctl_chars = {0x0 <repeats 16 times>},
            start = {
              pos = {
                charpos = 0x1,
                bytepos = 0x1
              },
              overlay_string_index = 0xffffffff,
              string_pos = {
                charpos = 0xffffffff,
                bytepos = 0xffffffff
              },
              dpvec_index = 0xffffffff
            },
            current = {
              pos = {
                charpos = 0x719,
                bytepos = 0x759
              },
              overlay_string_index = 0xffffffff,
              string_pos = {
                charpos = 0xffffffff,
                bytepos = 0xffffffff
              },
              dpvec_index = 0xffffffff
            },
            n_overlay_strings = 0x0,
            overlay_strings = {0x0 <repeats 16 times>},
            string_overlays = {0x0 <repeats 16 times>},
            string = 0x2b36802,
            from_overlay = 0x0,
            stack = {{
                string = 0x0,
                string_nchars = 0x0,
                end_charpos = 0x0,
                stop_charpos = 0x0,
                cmp_it = {
                  stop_pos = 0x0,
                  id = 0x0,
                  ch = 0x0,
                  lookback = 0x0,
                  nglyphs = 0x0,
                  nchars = 0x0,
                  nbytes = 0x0,
                  from = 0x0,
                  to = 0x0,
                  width = 0x0
                },
                face_id = 0x0,
                u = {
                  image = {
                    object = 0x0,
                    slice = {
                      x = 0x0,
                      y = 0x0,
                      width = 0x0,
                      height = 0x0
                    },
                    image_id = 0x0
                  },
                  comp = {
                    object = 0x0
                  },
                  stretch = {
                    object = 0x0
                  }
                },
                position = {
                  charpos = 0x0,
                  bytepos = 0x0
                },
                current = {
                  pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  overlay_string_index = 0x0,
                  string_pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  dpvec_index = 0x0
                },
                from_overlay = 0x0,
                area = LEFT_MARGIN_AREA,
                method = GET_FROM_BUFFER,
                multibyte_p = 0x0,
                string_from_display_prop_p = 0x0,
                display_ellipsis_p = 0x0,
                avoid_cursor_p = 0x0,
                line_wrap = TRUNCATE,
                voffset = 0x0,
                space_width = 0x0,
                font_height = 0x0
              }, {
                string = 0x0,
                string_nchars = 0x0,
                end_charpos = 0x0,
                stop_charpos = 0x0,
                cmp_it = {
                  stop_pos = 0x0,
                  id = 0x0,
                  ch = 0x0,
                  lookback = 0x0,
                  nglyphs = 0x0,
                  nchars = 0x0,
                  nbytes = 0x0,
                  from = 0x0,
                  to = 0x0,
                  width = 0x0
                },
                face_id = 0x0,
                u = {
                  image = {
                    object = 0x0,
                    slice = {
                      x = 0x0,
                      y = 0x0,
                      width = 0x0,
                      height = 0x0
                    },
                    image_id = 0x0
                  },
                  comp = {
                    object = 0x0
                  },
                  stretch = {
                    object = 0x0
                  }
                },
                position = {
                  charpos = 0x0,
                  bytepos = 0x0
                },
                current = {
                  pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  overlay_string_index = 0x0,
                  string_pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  dpvec_index = 0x0
                },
                from_overlay = 0x0,
                area = LEFT_MARGIN_AREA,
                method = GET_FROM_BUFFER,
                multibyte_p = 0x0,
                string_from_display_prop_p = 0x0,
                display_ellipsis_p = 0x0,
                avoid_cursor_p = 0x0,
                line_wrap = TRUNCATE,
                voffset = 0x0,
                space_width = 0x0,
                font_height = 0x0
              }, {
                string = 0x0,
                string_nchars = 0x0,
                end_charpos = 0x0,
                stop_charpos = 0x0,
                cmp_it = {
                  stop_pos = 0x0,
                  id = 0x0,
                  ch = 0x0,
                  lookback = 0x0,
                  nglyphs = 0x0,
                  nchars = 0x0,
                  nbytes = 0x0,
                  from = 0x0,
                  to = 0x0,
                  width = 0x0
                },
                face_id = 0x0,
                u = {
                  image = {
                    object = 0x0,
                    slice = {
                      x = 0x0,
                      y = 0x0,
                      width = 0x0,
                      height = 0x0
                    },
                    image_id = 0x0
                  },
                  comp = {
                    object = 0x0
                  },
                  stretch = {
                    object = 0x0
                  }
                },
                position = {
                  charpos = 0x0,
                  bytepos = 0x0
                },
                current = {
                  pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  overlay_string_index = 0x0,
                  string_pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  dpvec_index = 0x0
                },
                from_overlay = 0x0,
                area = LEFT_MARGIN_AREA,
                method = GET_FROM_BUFFER,
                multibyte_p = 0x0,
                string_from_display_prop_p = 0x0,
                display_ellipsis_p = 0x0,
                avoid_cursor_p = 0x0,
                line_wrap = TRUNCATE,
                voffset = 0x0,
                space_width = 0x0,
                font_height = 0x0
              }, {
                string = 0x0,
                string_nchars = 0x0,
                end_charpos = 0x0,
                stop_charpos = 0x0,
                cmp_it = {
                  stop_pos = 0x0,
                  id = 0x0,
                  ch = 0x0,
                  lookback = 0x0,
                  nglyphs = 0x0,
                  nchars = 0x0,
                  nbytes = 0x0,
                  from = 0x0,
                  to = 0x0,
                  width = 0x0
                },
                face_id = 0x0,
                u = {
                  image = {
                    object = 0x0,
                    slice = {
                      x = 0x0,
                      y = 0x0,
                      width = 0x0,
                      height = 0x0
                    },
                    image_id = 0x0
                  },
                  comp = {
                    object = 0x0
                  },
                  stretch = {
                    object = 0x0
                  }
                },
                position = {
                  charpos = 0x0,
                  bytepos = 0x0
                },
                current = {
                  pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  overlay_string_index = 0x0,
                  string_pos = {
                    charpos = 0x0,
                    bytepos = 0x0
                  },
                  dpvec_index = 0x0
                },
                from_overlay = 0x0,
                area = LEFT_MARGIN_AREA,
                method = GET_FROM_BUFFER,
                multibyte_p = 0x0,
                string_from_display_prop_p = 0x0,
                display_ellipsis_p = 0x0,
                avoid_cursor_p = 0x0,
                line_wrap = TRUNCATE,
                voffset = 0x0,
                space_width = 0x0,
                font_height = 0x0
              }},
            sp = 0x0,
            selective = 0x0,
            what = IT_CHARACTER,
            face_id = 0x0,
            selective_display_ellipsis_p = 0x0,
            ctl_arrow_p = 0x1,
            face_box_p = 0x0,
            start_of_box_run_p = 0x0,
            end_of_box_run_p = 0x0,
            overlay_strings_at_end_processed_p = 0x0,
            ignore_overlay_strings_at_pos_p = 0x0,
            glyph_not_available_p = 0x0,
            starts_in_middle_of_char_p = 0x0,
            face_before_selective_p = 0x0,
            constrain_row_ascent_descent_p = 0x0,
            line_wrap = TRUNCATE,
            base_face_id = 0x0,
            c = 0xa,
            len = 0x1,
            cmp_it = {
              stop_pos = 0x719,
              id = 0xffffffff,
              ch = 0xfffffffe,
              lookback = 0x0,
              nglyphs = 0x0,
              nchars = 0x0,
              nbytes = 0x0,
              from = 0x0,
              to = 0x0,
              width = 0x0
            },
            char_to_display = 0x20,
            image_id = 0x0,
            slice = {
              x = 0x2b36802,
              y = 0x2b36802,
              width = 0x2b36802,
              height = 0x2b36802
            },
            space_width = 0x2b36802,
            voffset = 0x0,
            tab_width = 0x8,
            font_height = 0x2b36802,
            object = 0x48b4005,
            position = {
              charpos = 0x718,
              bytepos = 0x758
            },
            truncation_pixel_width = 0x0,
            continuation_pixel_width = 0x0,
            first_visible_x = 0x0,
            last_visible_x = 0x333,
            last_visible_y = 0x134,
            extra_line_spacing = 0x0,
            max_extra_line_spacing = 0x0,
            override_ascent = 0xffffffff,
            override_descent = 0x0,
            override_boff = 0x0,
            glyph_row = 0x380a098,
            area = TEXT_AREA,
            nglyphs = 0x1,
            pixel_width = 0x7,
            ascent = 0xb,
            descent = 0x3,
            max_ascent = 0xb,
            max_descent = 0x3,
            phys_ascent = 0xb,
            phys_descent = 0x3,
            max_phys_ascent = 0xb,
            max_phys_descent = 0x3,
            current_x = 0x333,
            continuation_lines_width = 0x0,
            current_y = 0x62,
            first_vpos = 0x1,
            vpos = 0x6,
            hpos = 0x75,
            left_user_fringe_bitmap = 0x0,
            right_user_fringe_bitmap = 0x0,
            left_user_fringe_face_id = 0x0,
            right_user_fringe_face_id = 0x0
          }
          top = {
            charpos = 0x1,
            bytepos = 0x1
          }
          visible_p = 0x1
          old_buffer = 0x0
#1  0x010d0859 in Fpos_visible_in_window_p (pos=0x16b4, window=0x307c805,
partially=0x2b36802)
      at window.c:352
          w = 0x307c800
          posint = 0x5ad
          buf = 0x48b4000
          top = {
            charpos = 0x1,
            bytepos = 0x1
          }
          in_window = 0x2b36802
          rtop = 0x48b4000
          rbot = 0x2b6d0f0
          rowh = 0x2b638c2
          vpos = 0x119bf77
          fully_p = 0x1
          x = 0x1
          y = 0x48b4000
#2  0x010234f7 in Ffuncall (nargs=0x3, args=0x82f1b0) at eval.c:3030
          fun = 0x138e5fd
          original_fun = 0x2b69c92
          funcar = 0x1
          numargs = 0x2
          lisp_numargs = 0x10a6d98
          val = 0x4
          backtrace = {
            next = 0x82f380,
            function = 0x82f1b0,
            args = 0x82f1b4,
            nargs = 0x2,
            evalargs = 0x0,
            debug_on_exit = 0x0
          }
          internal_args = 0x82f110
          i = 0x3
#3  0x0116962f in Fbyte_code (bytestr=0x37e15b1, vector=0x3988605,
maxdepth=0x10) at bytecode.c:680
          count = 0xd
          op = 0x2
          vectorp = 0x3988608
          bytestr_length = 0xae
          stack = {
            pc = 0x33c6c06 "„†",
            top = 0x82f1b8,
            bottom = 0x82f1b0,
            byte_string = 0x37e15b1,
            byte_string_start = 0x33c6b90 "\b…­",
            constants = 0x3988605,
            next = 0x82f4f0
          }
          top = 0x82f1b0
          result = 0x0
#4  0x01023be1 in funcall_lambda (fun=0x39a4005, nargs=0x0,
arg_vector=0x82f3e8) at eval.c:3211
          val = 0x6e44
          syms_left = 0x2b36802
          next = 0x2b8f582
          count = 0xd
          i = 0x0
          optional = 0x0
          rest = 0x0
#5  0x010236c0 in Ffuncall (nargs=0x1, args=0x82f3e4) at eval.c:3070
          fun = 0x39a4005
          original_fun = 0x399bc02
          funcar = 0x395c3a6
          numargs = 0x0
          lisp_numargs = 0x101a6d7
          val = 0x6e44
          backtrace = {
            next = 0x82f5b0,
            function = 0x82f3e4,
            args = 0x82f3e8,
            nargs = 0x0,
            evalargs = 0x0,
            debug_on_exit = 0x0
          }
          internal_args = 0x82f3e8
          i = 0x3c40ea3
#6  0x0116962f in Fbyte_code (bytestr=0x37f4ee1, vector=0x39aae05,
maxdepth=0x10) at bytecode.c:680
          count = 0xd
          op = 0x0
          vectorp = 0x39aae08
          bytestr_length = 0x73
          stack = {
            pc = 0x33c8060 "ˆ\016\030ƒi",
            top = 0x82f3e4,
            bottom = 0x82f3e0,
            byte_string = 0x37f4ee1,
            byte_string_start = 0x33c800c "Æ\b!ƒ\021",
            constants = 0x39aae05,
            next = 0x82f730
          }
          top = 0x82f3e4
          result = 0x0
#7  0x01023be1 in funcall_lambda (fun=0x39a9885, nargs=0x1,
arg_vector=0x82f614) at eval.c:3211
          val = 0x2b36802
          syms_left = 0x2b36802
          next = 0x399bf1a
          count = 0xb
          i = 0x1
          optional = 0x1
          rest = 0x0
#8  0x010236c0 in Ffuncall (nargs=0x2, args=0x82f610) at eval.c:3070
          fun = 0x39a9885
          original_fun = 0x399bf02
          funcar = 0x2b6919b
          numargs = 0x1
          lisp_numargs = 0x101a6d7
          val = 0x82f5f8
          backtrace = {
            next = 0x82f7f0,
            function = 0x82f610,
            args = 0x82f614,
            nargs = 0x1,
            evalargs = 0x0,
            debug_on_exit = 0x0
          }
          internal_args = 0x2b36802
          i = 0x3a8cc93
#9  0x0116962f in Fbyte_code (bytestr=0x37f8691, vector=0x39a3a05,
maxdepth=0x14) at bytecode.c:680
          count = 0x8
          op = 0x1
          vectorp = 0x39a3a08
          bytestr_length = 0xf8
          stack = {
            pc = 0x33c869a "ˆ\202ñ",
            top = 0x82f614,
            bottom = 0x82f610,
            byte_string = 0x37f8691,
            byte_string_start = 0x33c8628 "p\020Æ ˆÇ`È\"‰\031ƒ\022",
            constants = 0x39a3a05,
            next = 0x0
          }
          top = 0x82f610
          result = 0x82f4f4
#10 0x01023be1 in funcall_lambda (fun=0x39a9265, nargs=0x1,
arg_vector=0x82f8a4) at eval.c:3211
          val = 0x0
          syms_left = 0x2b36802
          next = 0x2b60c4a
          count = 0x5
          i = 0x1
          optional = 0x1
          rest = 0x0
#11 0x010236c0 in Ffuncall (nargs=0x2, args=0x82f8a0) at eval.c:3070
          fun = 0x39a9265
          original_fun = 0x3967f7a
          funcar = 0x2b36802
          numargs = 0x1
          lisp_numargs = 0x1005b99
          val = 0x82f838
          backtrace = {
            next = 0x82fab0,
            function = 0x82f8a0,
            args = 0x82f8a4,
            nargs = 0x1,
            evalargs = 0x0,
            debug_on_exit = 0x0
          }
          internal_args = 0x82f808
          i = 0x2b36802
#12 0x01168b17 in Fcall_interactively (function=0x3967f7a,
record_flag=0x2b36802, keys=0x2b3bb05)
      at callint.c:869
          val = 0x2cadb45
          args = 0x82f8a0
          visargs = 0x82f880
          specs = 0x37fb191
          filter_specs = 0x37fb191
          teml = 0x11f25dd
          up_event = 0x2b36802
          enable = 0x2b36802
          speccount = 0x3
          next_event = 0x1
          prefix_arg = 0x2b36802
          string = 0x82f8c0 "P"
          tem = 0x13a6b5c ""
          varies = 0x82f860
          i = 0x2
          j = 0x1
          count = 0x1
          foo = 0x3a73dce
          prompt1 = '\000' <repeats 99 times>
          tem1 = 0x0
          arg_from_tty = 0x0
          gcpro1 = {
            next = 0x2b41e42,
            var = 0x2b36802,
            nvars = 0x2b36802
          }
          gcpro2 = {
            next = 0x2b41e42,
            var = 0x2b41522,
            nvars = 0x82f9b8
          }
          gcpro3 = {
            next = 0x2bcb366,
            var = 0x2b41522,
            nvars = 0x2
          }
          gcpro4 = {
            next = 0x2bcb37e,
            var = 0x2b36802,
            nvars = 0x2
          }
          gcpro5 = {
            next = 0x4905268,
            var = 0x2b36802,
            nvars = 0x2b36802
          }
          key_count = 0x1
          record_then_fail = 0x0
          save_this_command = 0x3967f7a
          save_last_command = 0x3967fda
          save_this_original_command = 0x3967f7a
          save_real_this_command = 0x3967f7a
#13 0x010234f7 in Ffuncall (nargs=0x4, args=0x82fb20) at eval.c:3030
          fun = 0x139132d
          original_fun = 0x2b5b5ca
          funcar = 0x2b57b33
          numargs = 0x3
          lisp_numargs = 0x101ac15
          val = 0x82fb18
          backtrace = {
            next = 0x0,
            function = 0x82fb20,
            args = 0x82fb24,
            nargs = 0x3,
            evalargs = 0x0,
            debug_on_exit = 0x0
          }
          internal_args = 0x82fb24
          i = 0x2b41a12
#14 0x0102308f in call3 (fn=0x2b5b5ca, arg1=0x3967f7a, arg2=0x2b36802,
arg3=0x2b36802)
      at eval.c:2850
          ret_ungc_val = 0x102422a
          gcpro1 = {
            next = 0x35fc086,
            var = 0x2b36802,
            nvars = 0x4
          }
          args = {0x2b5b5ca, 0x3967f7a, 0x2b36802, 0x2b36802}
#15 0x01014f36 in Fcommand_execute (cmd=0x3967f7a, record_flag=0x2b36802,
keys=0x2b36802,
      special=0x2b36802) at keyboard.c:10507
          final = 0x39a9265
          tem = 0x2b36802
          prefixarg = 0x2b36802
#16 0x0100787b in command_loop_1 () at keyboard.c:1904
          scount = 0x2
          cmd = 0x3967f7a
          lose = 0x82fcd8
          keybuf = {0x80, 0x144, 0x82fc98, 0x1197215, 0x1000, 0x1bc, 0x30a8,
0x2b54a00, 0x2, 0x0,
            0x2, 0x2, 0x0, 0x2, 0x82fde0, 0x0, 0x0, 0x82fcb4, 0x82fb50, 0x0,
0x0, 0x0, 0x0, 0x0,
            0x0, 0x0, 0x0, 0x0, 0x2b36802, 0x2c0a702}
          i = 0x1
          prev_modiff = 0x62
          prev_buffer = 0x48b4000
          already_adjusted = 0x0
#17 0x01020fc4 in internal_condition_case (bfun=0x10061fd <command_loop_1>,
handlers=0x2b444da,
      hfun=0x1005bee <cmd_error>) at eval.c:1490
          val = 0x31f77de
          c = {
            tag = 0x2b36802,
            val = 0x2b36802,
            next = 0x82fde0,
            gcpro = 0x0,
            jmp = {0x82fda8, 0x7ffde000, 0x65002e, 0x650078, 0x82fcdc,
0x1020f5c, 0x82ffe0, 0x0,
              0x82fdd8, 0x3, 0x1, 0x82fde4, 0x77c30065, 0x0, 0x1, 0xa452f0},
            backlist = 0x0,
            handlerlist = 0x0,
            lisp_eval_depth = 0x0,
            pdlcount = 0x2,
            poll_suppress_count = 0x0,
            interrupt_input_blocked = 0x0,
            byte_stack = 0x0
          }
          h = {
            handler = 0x2b444da,
            var = 0x2b36802,
            chosen_clause = 0x82fde4,
            tag = 0x82fd20,
            next = 0x0
          }
#18 0x01005f62 in command_loop_2 () at keyboard.c:1360
          val = 0x0
#19 0x01020ab5 in internal_catch (tag=0x2b441b2, func=0x1005f3f
<command_loop_2>, arg=0x2b36802)
      at eval.c:1226
          c = {
            tag = 0x2b441b2,
            val = 0x2b36802,
            next = 0x0,
            gcpro = 0x0,
            jmp = {0x82fe58, 0x7ffde000, 0x65002e, 0x650078, 0x82fdcc,
0x1020aa6, 0x82ffe0, 0x0,
              0x2b69aea, 0x2b691cb, 0x2b36802, 0x2b40000, 0x2f2a5f4, 0x2b36802,
0x82fe48,
              0x2b691cb},
            backlist = 0x0,
            handlerlist = 0x0,
            lisp_eval_depth = 0x0,
            pdlcount = 0x2,
            poll_suppress_count = 0x0,
            interrupt_input_blocked = 0x0,
            byte_stack = 0x0
          }
#20 0x01005f18 in command_loop () at keyboard.c:1339
No locals.
#21 0x0100580a in recursive_edit_1 () at keyboard.c:954
          count = 0x1
          val = 0x82feb0
#22 0x0100596e in Frecursive_edit () at keyboard.c:1016
          count = 0x0
          buffer = 0x2b36802
#23 0x010027c6 in main (argc=0x1, argv=0xa42678) at emacs.c:1833
          dummy = 0x7ffde000
          stack_bottom_variable = 0x7f
          do_initial_setlocale = 0x1
          skip_args = 0x0
          no_loadup = 0x0
          junk = 0x0
          dname_arg = 0x0

Lisp Backtrace:
"pos-visible-in-window-p" (0x82f1b4)
"gnus-summary-recenter" (0x82f3e8)
"gnus-summary-display-article" (0x82f614)
"gnus-summary-next-page" (0x82f8a4)
"call-interactively" (0x82fb24)
(gdb)
(gdb)
(gdb) frame
#0  0x01030355 in pos_visible_p (w=0x307c800, charpos=0x5ad, x=0x82f0c4,
y=0x82f0c0,
      rtop=0x82f0d8, rbot=0x82f0d4, rowh=0x82f0d0, vpos=0x82f0cc) at xdisp.c:1396
1396                      for (; glyph < end
(gdb) p rowh
$1 = (int *) 0x82f0d0
(gdb) prow
y=14 x=0 pwid=819 a+d=11+3=14 phys=11+3=14 vis=14  L=0 T=117 R=0
start=1 end=122 DISP TRUNC:R
(gdb) p w
$2 = (struct window *) 0x307c800
(gdb) pwin
Window 1 *Summary nntp+news.gmane.org:gmane.text.xml.schema.devel*
start=1 end:pos=0 vpos=3 vscroll=0
cursor: y=14 x=273 vpos=1 hpos=39  phys: y=14 x=273 vpos=1 hpos=39 ON blk=OFF
(gdb) p glyph
$3 = (struct glyph *) 0x38d0020
(gdb) pg
STRETCH[0+0] pos=0 w=5 a+d=0+0 face=47 vof=909 N/A OVL [ slice=24,909,0,0
(gdb)
--------------------------------------------------------------------------------

With charpos=0x5ad in the trace above, I ran gnus again and opened the summary
buffer for the same group. Doing 'M-x goto-char 1453' puts point on '...' in 
the summary buffer, and 'M-x describe char' shows:

          character: C-j (10, #o12, #xa)
preferred charset: ascii (ASCII (ISO646 IRV))
         code point: 0x0A
             syntax:   	which means: whitespace
        buffer code: #x0A
          file code: #x0A (encoded by coding system utf-8-dos)
            display: by this font (glyph code)
      uniscribe:-outline-DejaVu Sans
Mono-normal-normal-normal-mono-12-*-*-*-c-*-iso8859-1 (#x03)

Character code properties: customize what to show
    name: <control>
    old-name: LINE FEED (LF)
    general-category: Cc (Other, Control)

There is an overlay here:
   From 1453 to 1816
    evaporate            t
    invisible            gnus-sum


There are text properties here:
    gnus-number          7068
--------------------------------------------------------------------------------




  reply	other threads:[~2010-03-16 12:53 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-15 23:40 emacs-21.1.94 crash in gnus on Windows Andy Moreton
2010-03-16 10:33 ` Eli Zaretskii
2010-03-16 12:53   ` Andy Moreton [this message]
2010-03-16 15:26     ` David Kastrup
2010-03-16 20:34       ` Andy Moreton
2010-03-16 19:47     ` Eli Zaretskii
2010-03-16 20:42       ` Andy Moreton
2010-03-16 21:49         ` Eli Zaretskii
2010-03-20 12:19           ` Andreas Schwab
2010-03-20 15:45             ` Andreas Schwab
2010-03-20 16:20               ` Eli Zaretskii
2010-03-20 16:24               ` Andreas Schwab
2010-03-20 16:31                 ` Eli Zaretskii
2010-03-24 13:50                   ` Andy Moreton
2010-03-24 21:34                 ` Chong Yidong
2010-03-25  4:14                   ` Eli Zaretskii
2010-03-25 16:35                     ` Chong Yidong
2010-03-25 19:51                       ` Eli Zaretskii
2010-03-20 16:29               ` Eli Zaretskii
2010-03-20 16:46                 ` Andreas Schwab

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=4B9F7F5F.1040504@gmail.com \
    --to=andrewjmoreton@googlemail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).