ports/70341: pan2 crashes when built with libgnuregex

Conrad J. Sabatier conrads at cox.net
Thu Aug 12 16:30:33 UTC 2004


The following reply was made to PR ports/70341; it has been noted by GNATS.

From: "Conrad J. Sabatier" <conrads at cox.net>
To: Joe Marcus Clarke <marcus at FreeBSD.org>
Cc: freebsd-gnats-submit at FreeBSD.org, pan at rebelbase.com
Subject: Re: ports/70341: pan2 crashes when built with libgnuregex
Date: Thu, 12 Aug 2004 11:27:44 -0500 (CDT)

 On 12-Aug-2004 Joe Marcus Clarke wrote:
 > Please provide a step-by-step example of how to reproduce this as
 > well as a full backtrace with debugging symbols.  I am not able to
 > reproduce this with a simple regular expression custom filter.
 
 OK.  First, I'm going to rebuild a few things with debugging support
 enabled.
 
 In the meantime, try creating a negative regex filter.   It seems
 that the second filter in my filters.xml is the troublemaker.  What I'm
 trying to do is filter out non-mp3 subject lines in mp3 groups (ignore
 the formatting; that's my mailer's fault):
 
 
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE rules SYSTEM "filters.dtd">
 <filters>
 
         <filter type="or" name="non-binaries" visible="t">
                 <binary state="incomplete"/>
                 <binary state="text"/>
         </filter>
 
 
         <filter type="and" name="non-mp3" visible="t">
                 <phrase negate="t" match_type="regex"
 key_type="subject" case_sensitive="f" key="\.[Mm][Pp]3"/>
         </filter>
 
 
 </filters>
 
 What I'm seeing in gdb, on entering a group, is this:
 
 $ gdb `which pan`
 GNU gdb 6.1.1 [FreeBSD]
 Copyright 2004 Free Software Foundation, Inc.
 GDB is free software, covered by the GNU General Public License, and
 you are
 welcome to change it and/or distribute copies of it under certain
 conditions.
 Type "show copying" to see the conditions.
 There is absolutely no warranty for GDB.  Type "show warranty" for
 details.
 This GDB was configured as "amd64-marcel-freebsd"...(no debugging
 symbols found)...
 (gdb) run
 Starting program: /usr/X11R6/bin/pan
 (no debugging symbols found)...(no debugging symbols found)...(no
 debugging symbols found)...(no debugging symbols found)...(no debugging
 symbols found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...(no debugging symbols
 found)...(no debugging symbols found)...
 Program received signal SIGSEGV, Segmentation fault.
 [Switching to Thread 8 (LWP 100134)]
 0x0000000202f2ba69 in re_search_2 () from /usr/lib/libgnuregex.so.2
 (gdb) bt
 #0  0x0000000202f2ba69 in re_search_2 () from /usr/lib/libgnuregex.so.2
 #1  0x0000000202f2bc43 in re_search () from /usr/lib/libgnuregex.so.2
 #2  0x0000000202f2c022 in regexec () from /usr/lib/libgnuregex.so.2
 #3  0x000000000046bf5b in filter_new_set_state ()
 #4  0x0000000000469b03 in filter_test_articles ()
 #5  0x0000000000469b03 in filter_test_articles ()
 #6  0x0000000000469c91 in filter_remove_failures ()
 #7  0x0000000000466f21 in rule_apply ()
 #8  0x0000000000464a60 in rule_manager_process_incoming_articles ()
 #9  0x00000000004575a4 in task_headers_new_sample ()
 #10 0x000000000044bac3 in queue_get_size_changed_callback ()
 #11 0x000000020268f18c in g_thread_pool_thread_proxy (data=0xaae300)
     at gthreadpool.c:113
 #12 0x000000020268ce04 in g_thread_create_proxy (data=0xaae300)
     at gthread.c:556
 #13 0x0000000202be6969 in pthread_create () from
 /usr/lib/libpthread.so.1
 #14 0x0000000203078a64 in makecontext () from /lib/libc.so.5
 #15 0x0000000000000000 in ?? ()
 #16 0x000000000068f800 in ?? ()
 #17 0x000000020268cd80 in g_thread_fail () at gthread.c:538
 #18 0x0000000000684dc0 in ?? ()
 #19 0x0000000000000000 in ?? ()
 #20 0x0000000000000000 in ?? ()
 #21 0x0000000000000000 in ?? ()
 Error accessing memory address 0x7fffffeee000: Bad address.
 (gdb)
 
 I'll try to provide a more complete trace later, once I've enabled
 debugging in some more libs and packages.
 
 Incidentally, I just noticed the "case_sensitive" option in the second
 rule.  There's no option in the filter dialog to toggle case
 sensitivity, though.  Think I'll report this to pan's authors.
 
 -- 
 Conrad J. Sabatier <conrads at cox.net> -- "In Unix veritas"



More information about the freebsd-ports-bugs mailing list