Subject: 26.2; Fatal error 11: Segmentation fault; Crash on: (find-file "any.svg")

From: Michael Pagan <[email-masked]>
Date: Mon, 13 May 2019 18:40:21 -0400

GNU Emacs 24.5 can open SVG files; however, versions 25.1 to 26.2 can
not.  In `dired' with point on an SVG file, begin crash on <RET>.

Certainly, imagemagick is involved in this process, but installing,
removing, and even purging and re-installing imagemagick has not
yielded any different type of reaction from GNU Emacs.  Regardless,
Emacs shouldn’t behave like this.

I checked the `BUGS' file, consulted `emacs-known-problems', and ran
some searches on the `bug-gnu-emacs' mailing-list and `debbugs', but…
to no avail, not one mention of anyone having problems opening SVG
files.  Seeing as the 6 "Outstanding bugs" on GNU’s bug report logs
with filter {subject:segmentation+fault;package=emacs} do not match
the errors that I have experienced: I hereby submit this bug report.

After installing the latest tarball from the GNU FTP, and following
the `INSTALL' instructions, I started emacs like so:

$ emacs -Q

;; Next, I evaluate elisp within GNU Emacs in #<buffer *scratch*>:
(shell-command "wget https://www.gnu.org/graphics/empowered-by-gnu.svg")
(find-file "empowered-by-gnu.svg")

# (C-j C-M-f C-j) and emacs has crashed.  Stderr? Try within BASH:
$ emacs -Q \
--eval '(shell-command "wget https://www.gnu.org/graphics/empowered-by-gnu.svg")' \
--eval '(find-file "~/empowered-by-gnu.svg")'

# Below is stderr:
Fatal error 11: Segmentation fault
Backtrace:
emacs[0x50db19]
emacs[0x4f3f67]
emacs[0x50c4ce]
emacs[0x50c7d3]
emacs[0x50c810]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fd6f8e29390]
/usr/lib/x86_64-linux-gnu/ImageMagick-6.8.9/modules-Q16/coders/svg.so(+0xb8b8)[0x7fd6e400e8b8]
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.so.2(ReadImage+0x198)[0x7fd6fb3d0a18]
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.so.2(MagickReadImage+0x6a)[0x7fd6fb8a2a3a]
emacs[0x5dfc3c]
emacs[0x5e835d]
emacs[0x5e87e0]
emacs[0x56a886]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
emacs[0x569840]
emacs[0x569c02]
emacs[0x56dae0]
emacs[0x56a886]
emacs[0x5a1c38]
emacs[0x56a7f3]
emacs[0x5a1c38]
...
Segmentation fault

# I’m sure you would like a better backtrace…
$ mv .emacs.d/ ignore/
$ cd ~/Code/emacs-26.2/src
$ emacs -Q

;; Next, from within emacs minibuffer: 
(M-x gdb <RET> gdb -i=mi bootstrap-emacs <RET> run <RET>)

;; Next, from within bootstrap-emacs in #<buffer *scratch*>:
(shell-command "wget https://www.gnu.org/graphics/empowered-by-gnu.svg")
(find-file "empowered-by-gnu.svg")
;; (C-j C-M-f C-j) and emacs has crashed… again.  GDB Backtrace:
;;
;; It’s a long backtrace. Execute (C-s end-backtrace <RET>) to move
;; point to my next comment in this email.
;;

(gdb) run
Starting program: /home/michael/Code/emacs-26.2/src/bootstrap-emacs 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe55a5700 (LWP 22700)]
[New Thread 0x7fffdf34e700 (LWP 22701)]
[New Thread 0x7fffde5ac700 (LWP 22702)]
warning: Corrupted shared library list: 0x1c37b40 != 0x1709980
[New Thread 0x7fffd7fff700 (LWP 22703)]

Thread 1 "bootstrap-emacs" received signal SIGSEGV, Segmentation fault.
ReadSVGImage (image_info=0x1ecadf0, exception=0xf6f990) at ../../coders/svg.c:2917
2917	../../coders/svg.c: No such file or directory.
(gdb) bt full
#0  ReadSVGImage (image_info=0x1ecadf0, exception=0xf6f990) at ../../coders/svg.c:2917
        cairo_image = <optimized out>
        pixel_info = <optimized out>
        p = <optimized out>
        q = <optimized out>
        svg_handle = <optimized out>
        cairo_surface = <optimized out>
        dimension_info = {width = 0, height = 1079410688, em = 90, ex = 7.9332950783013971e-317}
        x = <optimized out>
        pixels = <optimized out>
        error = 0x7ffff3a81cf0 <DestroyExceptionElement>
        y = <optimized out>
        delegate_info = <optimized out>
        filename = "/tmp/magick-22696aAOK2vM0lgLn\000\065\062,0.353 163.585,1.885 175.4,8.626 C 187.214,15.367 198.022,23.85 204.912,23.911 C 211.803,23.972 216.494,22.167 219.843,19.601 C 220.737,42.304 200.304,44.276 182.024,44"...
        file = <optimized out>
        image = 0x0
        status = <optimized out>
        unique_file = <optimized out>
        n = <optimized out>
        message = "1\000xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<!-- The Vectorized GNU Head by Aurelio A. Heckert -->\n<svg\n   xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n   xmlns:cc=\"http://creativecommons.or"...
        sax_modules = {internalSubset = 0x4056800000000000, isStandalone = 0x4056800000000000, hasInternalSubset = 0xf50350, hasExternalSubset = 0x1eadaf8, resolveEntity = 0x1, getEntity = 0x1ecaf38, entityDecl = 0x7fffffff2e50, notationDecl = 0x2000, attributeDecl = 0xf50350, elementDecl = 0x1ecadf0, unparsedEntityDecl = 0x1eadad0, setDocumentLocator = 0x1ecaf38, startDocument = 0x7fffffff2e50, endDocument = 0x2000, startElement = 0xf50350, endElement = 0x7ffff0cc153c <__GI___libc_free+76>, reference = 0x1, characters = 0x1ecaf38, ignorableWhitespace = 0x7fffffff2e50, processingInstruction = 0x7ffff3b24564 <DestroySemaphoreInfo+84>, comment = 0x1eadad0, warning = 0x1ecadf0, error = 0x1eadad0, fatalError = 0x1ecaf38, getParameterEntity = 0x7fffffff2e50, cdataBlock = 0x7ffff3ac2dbf <RelinquishMagickMemory+15>, externalSubset = 0x1ecadf0, initialized = 4088081825, _private = 0xf6f990, startElementNs = 0x1, endElementNs = 0x7fffffff77a0, serror = 0x4abc18 <bidi_cache_iterator_state+40>}
        sax_handler = <optimized out>
        __PRETTY_FUNCTION__ = "ReadSVGImage"
        __func__ = "ReadSVGImage"
#1  0x00007ffff3a1aa18 in ReadImage (image_info=image_info@entry=0x1ec6c50, exception=0xf6f990) at ../../magick/constitute.c:547
        value = <optimized out>
        delegate_info = <optimized out>
        magick_info = 0xefdf60
        sans_exception = <optimized out>
        geometry_info = {rho = 4.9406564584124654e-323, sigma = 6.9533558056045944e-310, xi = 6.9533558056049896e-310, psi = 2.9860166580377214e-317, chi = 0}
        image = <optimized out>
        next = 0x87486c <pure+19852>
        read_info = 0x1ecadf0
        flags = <optimized out>
        thread_support = <optimized out>
        domain = CoderPolicyDomain
        rights = ReadPolicyRights
        __PRETTY_FUNCTION__ = "ReadImage"
        __func__ = "ReadImage"
#2  0x00007ffff3eeca3a in MagickReadImage (wand=wand@entry=0xe82400, filename=filename@entry=0x1e8d448 "/home/michael/Code/emacs-26.2/src/empowered-by-gnu.svg") at ../../wand/magick-image.c:8633
        images = <optimized out>
        read_info = 0x1ec6c50
        __PRETTY_FUNCTION__ = "MagickReadImage"
        __func__ = "MagickReadImage"
#3  0x00000000005dfc3c in imagemagick_load_image (f=0x1397140, img=0xf15300, contents=0x0, size=0, filename=0x1e8d448 "/home/michael/Code/emacs-26.2/src/empowered-by-gnu.svg") at image.c:8580
        width = <optimized out>
        height = <optimized out>
        image_width = <optimized out>
        image_height = <optimized out>
        status = <optimized out>
        ximg = 0x7fffffffae90
        x = <optimized out>
        y = <optimized out>
        image_wand = 0xe82400
        iterator = <optimized out>
        pixels = <optimized out>
        bg_wand = 0x0
        pixel = {storage_class = (unknown: 4294942832), colorspace = 32767, matte = MagickFalse, fuzz = 1.1484305446297334e-316, depth = 5501492, red = 0, green = 0, blue = 0, opacity = 0, index = 2.21381251e-38}
        ino = <optimized out>
        desired_width = <optimized out>
        desired_height = <optimized out>
        filename_hint = 0x0
        imagemagick_initialized = true
#4  0x00000000005e835d in lookup_image (f=f@entry=0x1397140, spec=spec@entry=32267795) at image.c:1752
        img = <optimized out>
        hash = <optimized out>
#5  0x00000000005e87e0 in Fimage_size (spec=32267795, pixels=49344, frame=<optimized out>) at image.c:877
        img = <optimized out>
        f = 0x1397140
        id = <optimized out>
        width = <optimized out>
        height = <optimized out>
#6  0x000000000056a886 in Ffuncall (nargs=<optimized out>, args=args@entry=0x7fffffffb1a0) at eval.c:2776
        fun = <optimized out>
        original_fun = 691056
        numargs = 3
        val = <optimized out>
        count = 31
#7  0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=20615589, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488335312, args=<optimized out>, args@entry=0x7fffffffb1a0) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x13a91a8
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffb1d0
        top = 0x7fffffffb1a0
        void_stack_lim = 0x7fffffffb1d0
        bytestr_data = <optimized out>
        pc = 0x7fffffffb1f0 "\207\307\305\004\"\307\310\005\"\001\203U"
        count = 31
        result = <optimized out>
#8  0x000000000056a57f in funcall_lambda (fun=140737488335344, nargs=140737488335312, nargs@entry=2, arg_vector=0x7fffffffb1a0, arg_vector@entry=0x7fffffffb380) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#9  0x000000000056a7f3 in Ffuncall (nargs=3, args=args@entry=0x7fffffffb378) at eval.c:2790
        fun = <optimized out>
        original_fun = 3360848
        numargs = 2
        val = <optimized out>
        count = 30
#10 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=20661173, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488335792, args=<optimized out>, args@entry=0x7fffffffb378) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x13b43b8
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffb3b0
        top = 0x7fffffffb378
        void_stack_lim = 0x7fffffffb3b0
        bytestr_data = <optimized out>
        pc = 0x7fffffffb3c7 "\bǷ\202e"
        count = 30
        result = <optimized out>
#11 0x000000000056a57f in funcall_lambda (fun=140737488335815, nargs=140737488335792, nargs@entry=0, arg_vector=0x7fffffffb378, arg_vector@entry=0x7fffffffb5a0) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#12 0x000000000056a7f3 in Ffuncall (nargs=1, args=args@entry=0x7fffffffb598) at eval.c:2790
        fun = <optimized out>
        original_fun = 3674800
        numargs = 0
        val = <optimized out>
        count = 29
#13 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=20814261, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488336352, args=<optimized out>, args@entry=0x7fffffffb598) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x13d99b8
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffb5e0
        top = 0x7fffffffb598
        void_stack_lim = 0x7fffffffb5e0
        bytestr_data = <optimized out>
        pc = 0x7fffffffb6cd "\210\362\363!\205", <incomplete sequence \367>
        count = 27
        result = <optimized out>
#14 0x000000000056a57f in funcall_lambda (fun=140737488336589, nargs=140737488336352, nargs@entry=0, arg_vector=0x7fffffffb598, arg_vector@entry=0x7fffffffb820) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#15 0x000000000056a7f3 in Ffuncall (nargs=1, args=args@entry=0x7fffffffb818) at eval.c:2790
        fun = <optimized out>
        original_fun = 19241376
        numargs = 0
        val = <optimized out>
        count = 26
#16 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=20648261, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488337024, args=<optimized out>, args@entry=0x7fffffffb818) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x13b1148
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffb880
        top = 0x7fffffffb818
        void_stack_lim = 0x7fffffffb880
        bytestr_data = <optimized out>
        pc = 0x7fffffffb899 "\210\314 \204\061"
        count = 26
        result = <optimized out>
#17 0x000000000056a57f in funcall_lambda (fun=140737488337049, nargs=140737488337024, nargs@entry=0, arg_vector=0x7fffffffb818, arg_vector@entry=0x7fffffffba90) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#18 0x000000000056a7f3 in Ffuncall (nargs=1, args=args@entry=0x7fffffffba88) at eval.c:2790
        fun = <optimized out>
        original_fun = 4954704
        numargs = 0
        val = <optimized out>
        count = 25
#19 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9216653, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488337568, args=<optimized out>, args@entry=0x7fffffffba88) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8ca290 <pure+370608>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffbaa0
        top = 0x7fffffffba88
        void_stack_lim = 0x7fffffffbaa0
        bytestr_data = <optimized out>
        pc = 0x7fffffffbab5 "\210\001\207\202\003"
        count = 25
        result = <optimized out>
#20 0x000000000056a57f in funcall_lambda (fun=140737488337589, nargs=140737488337568, nargs@entry=2, arg_vector=0x7fffffffba88, arg_vector@entry=0x7fffffffbc48) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#21 0x000000000056a7f3 in Ffuncall (nargs=3, args=args@entry=0x7fffffffbc40) at eval.c:2790
        fun = <optimized out>
        original_fun = 4853088
        numargs = 2
        val = <optimized out>
        count = 24
#22 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9215469, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488338016, args=<optimized out>, args@entry=0x7fffffffbc40) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c9df0 <pure+369424>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffbc60
        top = 0x7fffffffbc40
        void_stack_lim = 0x7fffffffbc60
        bytestr_data = <optimized out>
        pc = 0x7fffffffbe1e "\210̲\006\202e\001\266\003\002\204\353\001\212eb\210\214ede\r\\^}\210\340\307\016\061\353#*\211\262\004\203\353\001\333\003\006\a\"\210\002?\205\363\001\354p!\207\377\177"
        count = 24
        result = <optimized out>
#23 0x000000000056a57f in funcall_lambda (fun=140737488338462, nargs=140737488338016, nargs@entry=0, arg_vector=0x7fffffffbc40, arg_vector@entry=0x7fffffffbfa8) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#24 0x000000000056a7f3 in Ffuncall (nargs=1, args=args@entry=0x7fffffffbfa0) at eval.c:2790
        fun = <optimized out>
        original_fun = 4955520
        numargs = 0
        val = <optimized out>
        count = 23
#25 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9208253, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488338880, args=<optimized out>, args@entry=0x7fffffffbfa0) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c81c0 <pure+362208>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffbfc0
        top = 0x7fffffffbfa0
        void_stack_lim = 0x7fffffffbfc0
        bytestr_data = <optimized out>
        pc = 0x7fffffffbfd9 "0\202#"
        count = 22
        result = <optimized out>
#26 0x000000000056a57f in funcall_lambda (fun=140737488338905, nargs=140737488338880, nargs@entry=1, arg_vector=0x7fffffffbfa0, arg_vector@entry=0x7fffffffc188) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#27 0x000000000056a7f3 in Ffuncall (nargs=2, args=args@entry=0x7fffffffc180) at eval.c:2790
        fun = <optimized out>
        original_fun = 4955328
        numargs = 1
        val = <optimized out>
        count = 21
#28 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9207421, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488339368, args=<optimized out>, args@entry=0x7fffffffc180) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c7e80 <pure+361376>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffc1a8
        top = 0x7fffffffc180
        void_stack_lim = 0x7fffffffc1a8
        bytestr_data = <optimized out>
        pc = 0x7fffffffc288 "\210\016\063\347>\203\035\001deV\203\035\001dSf\350U\204\035\001\016\064\311=\203\005\001dSf\351U\204\035\001\t\204\035\001\212db\210\352\061\027\001\353c0\202\033\001\210\202\034\001\210)\t\203\062\001\016\062\203\062\001\016\065\354N\355=\204\062\001\356 \210\357\360!\207\207"
        count = 21
        result = <optimized out>
#29 0x000000000056a57f in funcall_lambda (fun=140737488339592, nargs=140737488339368, nargs@entry=2, arg_vector=0x7fffffffc180, arg_vector@entry=0x7fffffffc458) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#30 0x000000000056a7f3 in Ffuncall (nargs=3, args=args@entry=0x7fffffffc450) at eval.c:2790
        fun = <optimized out>
        original_fun = 4954896
        numargs = 2
        val = <optimized out>
        count = 20
#31 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9205965, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488340080, args=<optimized out>, args@entry=0x7fffffffc450) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c78d0 <pure+359920>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffc470
        top = 0x7fffffffc450
        void_stack_lim = 0x7fffffffc470
        bytestr_data = <optimized out>
        pc = 0x7fffffffc557 "\210p)\207"
        count = 19
        result = <optimized out>
#32 0x000000000056a57f in funcall_lambda (fun=140737488340311, nargs=140737488340080, nargs@entry=6, arg_vector=0x7fffffffc450, arg_vector@entry=0x7fffffffc6e8) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#33 0x000000000056a7f3 in Ffuncall (nargs=7, args=args@entry=0x7fffffffc6e0) at eval.c:2790
        fun = <optimized out>
        original_fun = 4954800
        numargs = 6
        val = <optimized out>
        count = 18
#34 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9204653, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488340768, args=<optimized out>, args@entry=0x7fffffffc6e0) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c73b0 <pure+358608>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffc720
        top = 0x7fffffffc6e0
        void_stack_lim = 0x7fffffffc720
        bytestr_data = <optimized out>
        pc = 0x7fffffffc99c "\266\205\207"
        count = 18
        result = <optimized out>
#35 0x000000000056a57f in funcall_lambda (fun=140737488341404, nargs=140737488340768, nargs@entry=4, arg_vector=0x7fffffffc6e0, arg_vector@entry=0x7fffffffcaf0) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#36 0x000000000056a7f3 in Ffuncall (nargs=5, args=args@entry=0x7fffffffcae8) at eval.c:2790
        fun = <optimized out>
        original_fun = 4936832
        numargs = 4
        val = <optimized out>
        count = 17
#37 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9198701, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488341776, args=<optimized out>, args@entry=0x7fffffffcae8) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x8c5c70 <pure+352656>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffcb10
        top = 0x7fffffffcae8
        void_stack_lim = 0x7fffffffcb10
        bytestr_data = <optimized out>
        pc = 0x7fffffffcb16 "\211<\203\023"
        count = 17
        result = <optimized out>
#38 0x000000000056a57f in funcall_lambda (fun=140737488341782, fun@entry=9198605, nargs=140737488341776, nargs@entry=1, arg_vector=0x7fffffffcae8, arg_vector@entry=0x7fffffffcc30) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#39 0x0000000000569840 in apply_lambda (fun=9198605, args=<optimized out>, count=count@entry=16) at eval.c:2913
        args_left = <optimized out>
        i = <optimized out>
        arg_vector = 0x7fffffffcc30
        tem = <optimized out>
        sa_avail = <optimized out>
        sa_must_free = false
#40 0x0000000000569c02 in eval_sub (form=form@entry=16593555) at eval.c:2316
        fun = <optimized out>
        val = <optimized out>
        original_args = 16593571
        count = 16
        argvals = {13090837, 6459156382961175296, 222, 140737488342104, 15, 15, 15, 422212465053264}
#41 0x000000000056dae0 in Feval (form=16593555, lexical=<optimized out>) at eval.c:2061
No locals.
#42 0x000000000056a886 in Ffuncall (nargs=<optimized out>, args=args@entry=0x7fffffffce48) at eval.c:2776
        fun = <optimized out>
        original_fun = 21408
        numargs = 2
        val = <optimized out>
        count = 14
#43 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=10275917, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488342632, args=<optimized out>, args@entry=0x7fffffffce48) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x9ccc50 <pure+1429872>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffce68
        top = 0x7fffffffce48
        void_stack_lim = 0x7fffffffce68
        bytestr_data = <optimized out>
        pc = 0x7fffffffce83 "\002\203#"
        count = 14
        result = <optimized out>
#44 0x000000000056a57f in funcall_lambda (fun=140737488342659, nargs=140737488342632, nargs@entry=1, arg_vector=0x7fffffffce48, arg_vector@entry=0x7fffffffcfe8) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#45 0x000000000056a7f3 in Ffuncall (nargs=2, args=args@entry=0x7fffffffcfe0) at eval.c:2790
        fun = <optimized out>
        original_fun = 9944592
        numargs = 1
        val = <optimized out>
        count = 13
#46 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=10276589, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488343032, args=<optimized out>, args@entry=0x7fffffffcfe0) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x9ccef0 <pure+1430544>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffcff8
        top = 0x7fffffffcfe0
        void_stack_lim = 0x7fffffffcff8
        bytestr_data = <optimized out>
        pc = 0x7fffffffd005 "\n)B\211A\t=\204\032"
        count = 12
        result = <optimized out>
#47 0x000000000056a57f in funcall_lambda (fun=140737488343045, nargs=140737488343032, nargs@entry=1, arg_vector=0x7fffffffcfe0, arg_vector@entry=0x7fffffffd168) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#48 0x000000000056a7f3 in Ffuncall (nargs=2, args=args@entry=0x7fffffffd160) at eval.c:2790
        fun = <optimized out>
        original_fun = 4879040
        numargs = 1
        val = <optimized out>
        count = 11
#49 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=10273805, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488343408, args=<optimized out>, args@entry=0x7fffffffd160) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x9cc410 <pure+1427760>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffd170
        top = 0x7fffffffd160
        void_stack_lim = 0x7fffffffd170
        bytestr_data = <optimized out>
        pc = 0x7fffffffd17c "\210\301 )\207\242\207"
        count = 10
        result = <optimized out>
#50 0x000000000056a57f in funcall_lambda (fun=140737488343420, nargs=140737488343408, nargs@entry=1, arg_vector=0x7fffffffd160, arg_vector@entry=0x7fffffffd310) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#51 0x000000000056a7f3 in Ffuncall (nargs=nargs@entry=2, args=args@entry=0x7fffffffd308) at eval.c:2790
        fun = <optimized out>
        original_fun = 9939520
        numargs = 1
        val = <optimized out>
        count = 9
#52 0x000000000056663d in Ffuncall_interactively (nargs=2, args=0x7fffffffd308) at callint.c:252
No locals.
#53 0x000000000056a886 in Ffuncall (nargs=nargs@entry=3, args=args@entry=0x7fffffffd300) at eval.c:2776
        fun = <optimized out>
        original_fun = 26304
        numargs = 2
        val = <optimized out>
        count = 7
#54 0x00000000005670be in Fcall_interactively (function=<optimized out>, record_flag=<optimized out>, keys=<optimized out>) at callint.c:854
        val = <optimized out>
        args = <optimized out>
        visargs = <optimized out>
        specs = <optimized out>
        filter_specs = <optimized out>
        teml = <optimized out>
        up_event = <optimized out>
        enable = <optimized out>
        sa_avail = <optimized out>
        sa_must_free = <optimized out>
        next_event = <optimized out>
        prefix_arg = <optimized out>
        string = <optimized out>
        tem = <optimized out>
        varies = <optimized out>
        i = <optimized out>
        nargs = <optimized out>
        mark = <optimized out>
        arg_from_tty = <optimized out>
        key_count = <optimized out>
        record_then_fail = <optimized out>
        save_this_command = <optimized out>
        save_last_command = <optimized out>
        save_this_original_command = <optimized out>
        save_real_this_command = <optimized out>
#55 0x000000000056a886 in Ffuncall (nargs=<optimized out>, args=args@entry=0x7fffffffd508) at eval.c:2776
        fun = <optimized out>
        original_fun = 580160
        numargs = 3
        val = <optimized out>
        count = 5
#56 0x00000000005a1c38 in exec_byte_code (bytestr=<optimized out>, vector=9652637, maxdepth=<optimized out>, args_template=<optimized out>, nargs=nargs@entry=140737488344384, args=<optimized out>, args@entry=0x7fffffffd508) at bytecode.c:630
        op = <optimized out>
        type = <optimized out>
        const_length = <optimized out>
        bytestr_length = <optimized out>
        vectorp = 0x9349a0 <pure+806592>
        quitcounter = <optimized out>
        stack_items = <optimized out>
        sa_avail = <optimized out>
        sa_count = <optimized out>
        sa_must_free = false
        stack_base = <optimized out>
        stack_lim = 0x7fffffffd540
        top = 0x7fffffffd508
        void_stack_lim = 0x7fffffffd540
        bytestr_data = <optimized out>
        pc = 0x7fffffffd5bb "\006\006\071\203\242"
        count = 5
        result = <optimized out>
#57 0x000000000056a57f in funcall_lambda (fun=140737488344507, nargs=140737488344384, nargs@entry=1, arg_vector=0x7fffffffd508, arg_vector@entry=0x7fffffffd728) at eval.c:2977
        val = <optimized out>
        syms_left = <optimized out>
        lexenv = <optimized out>
        i = <optimized out>
        optional = <optimized out>
        rest = <optimized out>
        previous_optional_or_rest = <optimized out>
#58 0x000000000056a7f3 in Ffuncall (nargs=nargs@entry=2, args=args@entry=0x7fffffffd720) at eval.c:2790
        fun = <optimized out>
        original_fun = 16176
        numargs = 1
        val = <optimized out>
        count = 4
#59 0x000000000056a94a in call1 (fn=fn@entry=16176, arg1=<optimized out>) at eval.c:2627
No locals.
#60 0x00000000005031cd in command_loop_1 () at keyboard.c:1482
        cmd = <optimized out>
        keybuf = {42, 0, 18, 6459156382961175296, 140737488345104, 9827504, 9923984, 4, 4294967295, 0, 140737488345232, 5676034, 0, 0, 472446402651, 0, 0, 0, -1, 281474976710655, 0, 0, 280375465082880, 6459156382961175296, 120, 0, 16751683, 4002, 4294967295, 5674582}
        i = <optimized out>
        prev_modiff = 282
        prev_buffer = 0xc7c010
#61 0x0000000000568d6e in internal_condition_case (bfun=bfun@entry=0x502dd0 <command_loop_1>, handlers=handlers@entry=21120, hfun=hfun@entry=0x4f9950 <cmd_error>) at eval.c:1336
        val = <optimized out>
        c = 0x1631690
#62 0x00000000004f431c in command_loop_2 (ignore=ignore@entry=0) at keyboard.c:1110
        val = 16104048
#63 0x0000000000568d0c in internal_catch (tag=tag@entry=50976, func=func@entry=0x4f4300 <command_loop_2>, arg=arg@entry=0) at eval.c:1101
        val = <optimized out>
        c = 0x1631570
#64 0x00000000004f42d9 in command_loop () at keyboard.c:1089
No locals.
#65 0x00000000004f9536 in recursive_edit_1 () at keyboard.c:695
        val = <optimized out>
#66 0x00000000004f987b in Frecursive_edit () at keyboard.c:766
        buffer = <optimized out>
#67 0x000000000041945e in main (argc=1, argv=0x7fffffffdb28) at emacs.c:1722
        stack_bottom_variable = 0x0
        do_initial_setlocale = <optimized out>
        dumping = <optimized out>
        skip_args = 0
        no_loadup = false
        junk = 0x0
        dname_arg = 0x0
        ch_to_dir = 0x0
        original_pwd = <optimized out>
        disable_aslr = <optimized out>
        rlim = {rlim_cur = 10022912, rlim_max = 18446744073709551615}
        sockfd = -1
(gdb) quit

;;[end-backtrace]-----------------------------------------------------
;;
;; gdb launched me into `emacs.c:1722' in `split-window-right'.  The
;; beginning of the function, `main', that point is located in looks
;; like this:
/* ARGSUSED */
int
main (int argc, char **argv)
{

;; gdb has placed me at the end of the `main' function.  Here is the
;; context, with `---:` pointing at the exact line the GNU Debugger
;; left me in:

     initialized = 1;

     /* Enter editor command loop.  This never returns.  */
---: Frecursive_edit ();
     /* NOTREACHED */
     return 0;
   }

;; Grepping the `src' directory for the string "Frecursive_edit ();"
;; brings me to that line as well, so it is easy for me to find.  I
;; don’t know why I can open an SVG file in GNU Emacs version 24.5,
;; but not in any version higher than that.  Please note, I can build
;; versions 25.1 and up (which have the bug) using the instructions in
;; the INSTALL file, but I can not build version 24.5 (which does
;; *not* have the bug) which I install via the `apt' package manager.
;;
;; Can anyone else reproduce this bug on their system?
;;

In GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.18.9)
 of 2019-05-13 built on Technoethical-T500
Windowing system distributor 'The X.Org Foundation', version 11.0.11804000
System Description:	Trisquel GNU/Linux 8.0, Flidas

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Configured using:
 'configure --with-xft --with-x-toolkit=gtk3'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LCMS2

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv cl-loaddefs cl-lib dired dired-loaddefs
format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg
epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils elec-pair time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 94668 8751)
 (symbols 48 20361 1)
 (miscs 40 41 144)
 (strings 32 28386 1033)
 (string-bytes 1 750182)
 (vectors 16 14069)
 (vector-slots 8 502280 7440)
 (floats 8 49 68)
 (intervals 56 208 0)
 (buffers 992 12)
 (heap 1024 32419 1170))

Thanks for taking the time to read this bug report.  Free Software is
great and always improving!  I welcome your feedback.

Happy hacking
-- 
Michael Pagan (pegzmasta) | Casual GNU Emacs user
GPG Key ID: B942 AD12 82B1 6D14 27A0  86AE 119E 451E 71B4 6D72