[MacPorts] #46623: procmail @3.22 on OS X Yosemite hits "Abort trap: 6" if variable assignment uses backticks

MacPorts noreply at macports.org
Sun Nov 26 06:43:44 UTC 2017


#46623: procmail @3.22 on OS X Yosemite hits "Abort trap: 6" if variable assignment
uses backticks
-------------------------+--------------------------------
  Reporter:  macports@…  |      Owner:  macports-tickets@…
      Type:  defect      |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:  2.3.3
Resolution:              |   Keywords:
      Port:  procmail    |
-------------------------+--------------------------------

Comment (by l2dy):

 As of procmail @3.22_7:
 {{{
 (lldb) bt
 * thread #1: tid = 0x4853, 0x00007fff951aaf06
 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-
 thread', stop reason = signal SIGABRT
   * frame #0: 0x00007fff951aaf06 libsystem_kernel.dylib`__pthread_kill +
 10
     frame #1: 0x00007fff839914ec libsystem_pthread.dylib`pthread_kill + 90
     frame #2: 0x00007fff939c86df libsystem_c.dylib`abort + 129
     frame #3: 0x00007fff939c8856 libsystem_c.dylib`abort_report_np + 181
     frame #4: 0x00007fff939eea0c libsystem_c.dylib`__chk_fail + 48
     frame #5: 0x00007fff939eea1c libsystem_c.dylib`__chk_fail_overlap + 16
     frame #6: 0x00007fff939eea4d libsystem_c.dylib`__chk_overlap + 49
     frame #7: 0x00007fff939eeab6 libsystem_c.dylib`__strlcpy_chk + 68
     frame #8: 0x0000000100006e36 procmail`readparse(p="Return-path:
 <...>", fpgetc=(procmail`getb at cstdio.c:154), sarg=1, skipping=0) + 4678
 at goodies.c:316
     frame #9: 0x0000000100003c90 procmail`mainloop + 4944 at
 procmail.c:923
     frame #10: 0x00000001000022e4 procmail`main(argc=2,
 argv=0x00007fff5fbffa88) + 4516 at procmail.c:461
     frame #11: 0x00007fff819165ad libdyld.dylib`start + 1
     frame #12: 0x00007fff819165ad libdyld.dylib`start + 1
 (lldb) frame select 8
 frame #8: 0x0000000100006e36 procmail`readparse(p="Return-path: <...>",
 fpgetc=(procmail`getb at cstdio.c:154), sarg=1, skipping=0) + 4678 at
 goodies.c:316
    313              }
    314             else
    315  copyit:     { size_t len=fencepost-p+1;
 -> 316                if(strlcpy(p,startb,len)>=len)               /*
 simply copy it */
    317                   skipping|=1;                         /* did we
 truncate it? */
    318                if(got<=SKIPPING_SPACE)           /* can only occur
 if sarg!=0 */
    319                   got=NORMAL_TEXT;
 (lldb) frame select 9
 frame #9: 0x0000000100003c90 procmail`mainloop + 4944 at procmail.c:923
    920          skipspace();
    921          if(testB('='))                             /* removal or
 assignment? */
    922           { *chp='=';
 -> 923             if(readparse(++chp,getb,1,skiprc))
    924                continue;
    925           }
    926          else
 (lldb) frame select 10
 frame #10: 0x00000001000022e4 procmail`main(argc=2,
 argv=0x00007fff5fbffa88) + 4516 at procmail.c:461
    458             if(buildpath(maildir,defmaildir,rcfile))
    459                break;
    460          if(tryopen(0,rctype,dowarning))
 -> 461           { register int rcs=mainloop();
 /* run it */
    462             if(rcs==rcs_DELIVERED)
    463                goto mailed;
 /* success! */
    464             if(rcs==rcs_EOF)
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/46623#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list