On Sat, Jan 14, 2012 at 11:18:22PM +0100, Harry Thijssen wrote:
Hi the problem comes from line 695 in settings.c :
return the_settings.output_routing[type] | SETTINGS_DEVICE_UNFILTERED;
If this line is commented out, the program doesn't abort.
And now I am lost again. No idea how to come further.
This function ( settings_get_output_routing ) has only one caller. That is in
output/driver.c: (output_submit__) :
if (settings_get_output_routing (type) & d->device_type)
d->class->submit (d, item);
If you have removed the return statement, and the crash doesn't occur,
this could be for one of two reason:
1. The crash was due to the _expression_ the_settings.output_routing[type]
causing a buffer overflow (unlikely, but possible; check the value of
"type")
2. Your change has caused the if-condition to evaluate to false, and
therefore the line
d->class->submit (d, item);
(which is where the problem lies) is no longer being called.
We need to find out which of these reasons it is.
What happens if you comment out the line
if (settings_get_output_routing (type) & d->device_type)
J'
--
PGP Public key ID: 1024D/2DE827B3
fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3
See
http://keys.gnupg.net or any PGP keyserver for public key.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iD8DBQFPEng1imdxnC3oJ7MRAmq5AJ9BS/LkJ/x1T0NhgOfGZyNjU53ZlQCdFxER
aDxitH9yRF2Ogejwi7X9GgM=
=aJyO
-----END PGP SIGNATURE-----