On Sun, 24 Sep 2017, Alec Leamas wrote: [...] > > But it's not 100% reproducible now, particularly when I try to use > > my own libirrecord.so so I have debugging symbols. What I can give you > > though is the irrecord backtrace: > > > > #0 0x0000000000000000 in ?? () > > #1 0x00007f5644aaae73 in record_buttons () > > from /usr/lib/x86_64-linux-gnu/libirrecord.so.0 > > #2 0x000055555555802d in get_button_data (opts=0x7fffffffe2d0, > > state=0x7fffffffe290, > > btn_state=0x7fffffffe110) at irrecord-ui.cpp:759 > > #3 do_record_buttons (state=0x7fffffffe290, opts=0x7fffffffe2d0) at > > irrecord-ui.cpp:814 > > #4 0x0000555555556ddf in main (argc=<optimized out>, argv=<optimized out>) > > at irrecord-ui.cpp:1179 > > > > Compiled from git commit be62884be227. > > So the crash happens somewhere in record_buttons() in irrecord.c. > > I suspect the curr_driver methods are not getting initialized... > > sometimes. > > Thanks. That said, if this from a version you compiled yourself, the > libirrecord.so seems to be the wrong one (i. e., the one installed by the > package).
True. It might not crash in the same way as when I use the package's irrecord with the package's libirrecord.so library. I'm done chasing it anyway. > > Now as to why I have driver=devinput in lirc_options.conf, it's because > > it's the only way I found to get my remote to work. Setting > > driver=default driver does not work and if I only provide > > devinput.lircd.conf and no Hauppauge_PVR350.conf file then it does not > > work either. > > I think you really need to take a step back here. The way you use lirc does > not match the official guidelines in [1], which you probably need to check. Right. The default configuration and the official guidelines don't work. * I used the devinput.lircd.conf provided by the package, together with driver = devinput and my remote wouldn't work. * I ran lirc-make-devinput as recommended by irrecord to generate a new devinput.lircd.conf file, still using driver=devinput, and the remote still wouldn't work. * Seconds after I regenerated the devinput.lircd.conf with lirc-make-devinput, lircd complained that it is outdated: Sep 24 01:33:47 habsheim lircd[1039]: lircd-0.10.0[1039]: Warning: Obsolete devinput config file used Sep 24 01:33:47 habsheim lircd[1039]: lircd-0.10.0[1039]: Notice: Use the distributed devinput.lircd.dist by renaming it. Sep 24 01:33:47 habsheim lircd[1039]: lircd-0.10.0[1039]: Notice: Or use irdb-get to search for "devinput" and download it. * With both versions of the devinput.lircd.conf lircd complained that all buttons were duplicated, which makes sense since they appear in both the devinput-32 and devinput-64 remotes. Sep 24 01:11:43 habsheim lircd[1047]: lircd-0.10.0[1047]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-64: Multiple values for same code: BTN_MISC Sep 24 01:11:43 habsheim lircd[1047]: lircd-0.10.0[1047]: Notice: /etc/lirc/lircd.conf.d/devinput.lircd.conf: devinput-64: Multiple values for same code: BTN_MOUSE * Now I finally got the remote to work with the default driver (i.e. not devinput (despite it being the default driver)) but I had to recreate the remote configuration file from scratch as the one I used with lirc 0.9.4c wouldn't work. The official guidelines don't talk about that incompatibility either. * Oh, and for the remote configuration files comment lines must have a '#' in the first column. Put spaces before and the configuration file breaks. If that's documented somewhere then I did not find where. So crashes in irrecord? No one will notice that bit of brittleness. -- Francois Gouget <fgou...@free.fr> http://fgouget.free.fr/ You can have my guns when you pry them from my kids cold, dead hands.