On 29 Jun 2020, at 09:19, Joe Orton <[email protected]> wrote: > The litmus tests are failing, not the perl-framework tests: > > https://travis-ci.org/github/apache/httpd/jobs/702768269#L2491
Ah - that’s where I was going wrong. > You can also see that there are segfaults logged from line 2519 onwards: > > https://travis-ci.org/github/apache/httpd/jobs/702768269#L2519 > > Running litmus locally, the backtrace looks like this: So the simple workaround is to be defensive against ctx->r being NULL, but I need to check - is there ever a legitimate reason for there to be a filled out ctx structure including a filename, but with no request? Process 9883 stopped * thread #62, stop reason = EXC_BAD_ACCESS (code=1, address=0x58) frame #0: 0x0000000100203e09 httpd`dav_fs_getetag(resource=0x000000010106f1e0) at repos.c:1869:31 1866 } 1867 1868 er.vlist_validator = NULL; -> 1869 er.request_time = ctx->r->request_time; 1870 er.finfo = &ctx->finfo; 1871 er.pathname = ctx->pathname; 1872 er.fd = NULL; Target 0: (httpd) stopped. (lldb) print ctx (dav_resource_private *) $0 = 0x000000010106f110 (lldb) print *ctx (dav_resource_private) $1 = { pool = 0x0000000105098628 pathname = 0x000000010106f198 "/Users/minfrin/src/apache/sandbox/proxy/htdocs/dav/litmus/lockcoll" finfo = { pool = 0x0000000105098628 valid = 7598960 protection = 1877 filetype = APR_DIR user = 501 group = 20 inode = 61244902 device = 16777220 nlink = 2 size = 64 csize = 0 atime = 1593421218000000 mtime = 1593421218000000 ctime = 1593421218000000 fname = 0x000000010106f198 "/Users/minfrin/src/apache/sandbox/proxy/htdocs/dav/litmus/lockcoll" name = 0x0000000000000000 filehand = 0x0000000000000000 } r = 0x0000000000000000 } (lldb) Regards, Graham —
