Ticket #113 (new defect)

Opened 8 months ago

Last modified 2 weeks ago

lcd4linux in debian repositories generates segfault

Reported by: damaltor Owned by: michael
Priority: normal Component: lcd4linux
Version: 0.1 Severity: minor
Keywords: Cc:

Description

hi there,

tried to install lcd4linux from debian repositories, but this generates segfault immendiately after opening parport. code from cvs, compiled by hand, works well. if needed, i can post a -Fvv output here.

damaltor

Attachments

Change History

Changed 4 months ago by michu

please provide more information, like hardware, config file, debug output...

Changed 2 weeks ago by anonymous

hardware: freshly installed debian etch, webserver and stuff, nothing special. system: 233 mhz pentium, 128 megs of ram

config file:

Display HD44780-16x2 {
    Driver  'HD44780'
    Model   'generic'
    UseBusy 1 
    Port     '/dev/parport0'
    Size    '16x2'
    Wire {
	RW      'SLCTIN'
	RS      'AUTOFD'
	ENABLE  'STROBE'
	ENABLE2 'GND'
	GPO     'INIT'
    }
    Icons 2 
    Gpos 4
}

Display XWindow {
    Driver     'X11'
    Size       '120x32'
    Font       '5x8'
    Pixel      '4+1'
    Gap        '-1x-1'
    Border      20
    Foreground '000000ff'
    Background '00000033'
    Basecolor  '70c000'
    Buttons   6
    Brightness 133
}

Variables {
	timed 0
}

#Widget mytimer {
#	class 'Timer'
#	expression timed = (timed == 0)
#	active 1
#	update 1000
#}

Widget GPO_1 {
    class 'GPO'
    expression 0 
    update 1000
}

Widget GPO_2 {
    class 'GPO'
#    expression diskstats('hd.', 'in_flight') == 0
    expression  diskstats('hd.', 'read_sectors', 400) + diskstats('hd.', 'write_sectors', 400) == 0
    update 100
}

Widget GPO_3 {
    class 'GPO'
    expression netdev('eth0', 'Rx_bytes' , 500) + netdev('eth0', 'Tx_bytes' , 500) == 0
    update 100
}

Widget GPO_4 {
    class 'GPO'
    expression cpupercent < 90
    update 100
}


Widget dlicon {
	class 'icon'
	speed 400
	visible netdev('eth0', 'Rx_bytes' , 500)
	bitmap {
		row1 '.....|..*..|.***.|*****|.***.|.***.|.***.'
		row2 '.***.|.....|..*..|.***.|*****|.***.|.***.'
		row3 '.***.|.***.|.....|..*..|.***.|*****|.***.'
		row4 '.***.|.***.|.***.|.....|..*..|.***.|*****'
		row5 '*****|.***.|.***.|.***.|.....|..*..|.***.'
		row6 '.***.|*****|.***.|.***.|.***.|.....|..*..'
		row7 '..*..|.***.|*****|.***.|.***.|.***.|.....'
		row8 '*****|*****|*****|*****|*****|*****|*****'
	}
	update 100
}

Widget ulicon {
	class 'icon'
	speed 400
	visible netdev('eth0', 'Tx_bytes' , 500)
	bitmap {
		row1 '..*..|.***.|*****|.***.|.***.|.***.|.....'
		row2 '.***.|*****|.***.|.***.|.***.|.....|..*..'
		row3 '*****|.***.|.***.|.***.|.....|..*..|.***.'
		row4 '.***.|.***.|.***.|.....|..*..|.***.|*****'
		row5 '.***.|.***.|.....|..*..|.***.|*****|.***.'
		row6 '.***.|.....|..*..|.***.|*****|.***.|.***.'
		row7 '.....|..*..|.***.|*****|.***.|.***.|.***.'
		 row8 '*****|*****|*****|*****|*****|*****|*****'
	}
	update 100
}


Widget rxcounter {
	class 'Text'
	expression  rxdata = netdev('eth0', 'Rx_bytes' ,0) ; rxdata / 1024 / 1024 / 1024 > 1 ?  rxdata / 1024 / 1024 / 1024 : (rxdata / 1024 / 1024 > 1 ? rxdata / 1024 / 1024 : (rxdata / 1024 > 1 ? rxdata / 1024 : (rxdata)))
	postfix  rxdata = netdev('eth0', 'Rx_bytes' ,0) ; rxdata / 1024 / 1024 / 1024 > 1 ? 'GB'  : (rxdata / 1024 / 1024 > 1 ? 'MB' : (rxdata / 1024 > 1 ? 'kB' : (' B')))

	align 'R'
	update 100
	width 7
	precision 1
}

Widget txcounter {
        class 'Text'
        expression  txdata = netdev('eth0', 'Tx_bytes' ,0) ; txdata / 1024 / 1024 / 1024 > 1 ?  txdata / 1024 / 1024 / 1024 : (txdata / 1024 / 1024 > 1 ? txdata / 1024 / 1024 : (txdata / 1024 > 1 ? txdata / 1024 : (txdata)))
        postfix  txdata = netdev('eth0', 'Tx_bytes' ,0) ; txdata / 1024 / 1024 / 1024 > 1 ? 'GB'  : (txdata / 1024 / 1024 > 1 ? 'MB' : (txdata / 1024 > 1 ? 'kB' : (' B')))

        align 'R'
        update 100
        width 7
        precision 1
}

Widget disk {
	class 'Text'
	expression totalblocks = statfs('/', 'blocks'); freeblocks = statfs('/', 'bavail'); usedblocks = totalblocks - freeblocks; diskpercent = usedblocks / totalblocks * 100
	prefix diskpercent == 100 ? '' : 'H'
	postfix '%'
	width 4
	precision 0
	align 'R'
	update 1200
}

Widget cpu {
	class 'Text'
	expression cpupercent = proc_stat::cpu('busy', 500)
	prefix cpupercent == 100 ? '' : 'C'
	postfix '%'
	width 4
	precision 0
	align 'R'
	update 400
}


Widget systembars {
	class 'Bar'
	expression cpupercent
	expression2 diskpercent
	length 8
	style 'H'
	direction 'E'
	update '50'
	min 0
	max 100
}


Layout Default {
    Row1 {
	Col8 'dlicon'
        Col1 'rxcounter'
	Col9 'txcounter'
	Col16 'ulicon'
    }
    Row2 {
	Col1 'disk'
	Col5 'cpu'
	Col9 'systembars'
    }
#    Timer1 'mytimer'
	GPO1 'GPO_1'
        GPO2 'GPO_2'
        GPO3 'GPO_3'
        GPO4 'GPO_4'
}





Display 'HD44780-16x2'
Layout  'Default'

works perfectly if hand-compiled. also, works good with the version of the ubuntu repos.

Add/Change #113 (lcd4linux in debian repositories generates segfault)

Author



Change Properties
<Author field>
Action
as new
as The resolution will be set. Next status will be 'closed'
to The owner will change. Next status will be 'new'
The owner will change to anonymous. Next status will be 'assigned'
 
Note: See TracTickets for help on using tickets.