{"action":"opened","issue":{"url":"https://api.github.com/repos/pkgconf/pkgconf/issues/85","labels_url":"https://api.github.com/repos/pkgconf/pkgconf/issues/85/labels{/name}","comments_url":"https://api.github.com/repos/pkgconf/pkgconf/issues/85/comments","events_url":"https://api.github.com/repos/pkgconf/pkgconf/issues/85/events","html_url":"https://github.com/pkgconf/pkgconf/issues/85","id":124216395,"number":85,"title":"pkgconf segfault when a require is specified with version number and the required .pc file is empty","user":{"login":"lantw44","id":3016644,"avatar_url":"https://avatars.githubusercontent.com/u/3016644?v=3","gravatar_id":"","url":"https://api.github.com/users/lantw44","html_url":"https://github.com/lantw44","followers_url":"https://api.github.com/users/lantw44/followers","following_url":"https://api.github.com/users/lantw44/following{/other_user}","gists_url":"https://api.github.com/users/lantw44/gists{/gist_id}","starred_url":"https://api.github.com/users/lantw44/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lantw44/subscriptions","organizations_url":"https://api.github.com/users/lantw44/orgs","repos_url":"https://api.github.com/users/lantw44/repos","events_url":"https://api.github.com/users/lantw44/events{/privacy}","received_events_url":"https://api.github.com/users/lantw44/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-12-29T14:11:05Z","updated_at":"2015-12-29T14:11:05Z","closed_at":null,"body":"To reproduce the problem:\r\n\r\n* Create a empty file called 'a.pc'.\r\n* Create a file called 'b.pc' which lists 'a' in Requires:\r\n```\r\nName: b\r\nVersion: 3\r\nRequires: a >= 2\r\n```\r\n\r\n* Run 'pkgconf --modversion b'.\r\n```\r\nSegmentation fault (core dumped)\r\n```\r\n\r\nBacktrace:\r\n```\r\n#0  0x0000000800b7e890 in strcasecmp_l () from /lib/libc.so.7\r\n#1  0x00000008008271df in pkgconf_compare_version (a=0x0, b=0x8014080a8 \"2\") at ../libpkgconf/pkg.c:531\r\n#2  0x0000000800827f31 in pkgconf_pkg_comparator_gte (pkg=<optimized out>, pkgdep=<optimized out>) at ../libpkgconf/pkg.c:692\r\n#3  0x0000000800827ad4 in pkgconf_pkg_verify_dependency (flags=<optimized out>, eflags=<optimized out>, pkgdep=<optimized out>, flags=<optimized out>, \r\n    eflags=<optimized out>) at ../libpkgconf/pkg.c:804\r\n#4  pkgconf_pkg_walk_list (parent=0x80140b100, deplist=<optimized out>, func=0x0, data=0x0, depth=<optimized out>, flags=0) at ../libpkgconf/pkg.c:878\r\n#5  0x00000008008278f7 in pkgconf_pkg_traverse (root=0x80140b100, func=0x0, data=0x0, maxdepth=1999, flags=0) at ../libpkgconf/pkg.c:977\r\n#6  0x0000000800827b7b in pkgconf_pkg_walk_list (parent=0x7ffffffee2c0, deplist=<optimized out>, func=0x0, data=0x0, depth=<optimized out>, flags=0)\r\n    at ../libpkgconf/pkg.c:896\r\n#7  0x00000008008278f7 in pkgconf_pkg_traverse (root=0x7ffffffee2c0, func=0x0, data=0x0, maxdepth=2000, flags=0) at ../libpkgconf/pkg.c:977\r\n#8  0x00000008008298e5 in pkgconf_queue_verify (world=<optimized out>, list=<optimized out>, maxdepth=<optimized out>, world=<optimized out>, list=<optimized out>, \r\n    maxdepth=<optimized out>, flags=<optimized out>) at ../libpkgconf/queue.c:68\r\n#9  pkgconf_queue_validate (list=<optimized out>, maxdepth=<error reading variable: Cannot access memory at address 0xffffffffffffffff>, flags=0)\r\n    at ../libpkgconf/queue.c:112\r\n#10 0x000000000040215d in main (argc=<optimized out>, argv=<optimized out>) at ../main.c:895\r\n```"}}