Page 1 of 1

Problem with zmc (segfault)

Posted: Tue Jan 31, 2006 3:02 pm
by carbolineum
Hi all,

I'm new to ZoneMinder and installed the actual version for the first time yesterday. Now I have the following problem.

When starting "zmc -d /dev/video0" it crashes. A backtrace with gdb shows the following:

Code: Select all

Program received signal SIGSEGV, Segmentation fault.
0x402fd00e in _int_malloc () from /lib/i686/libc.so.6

#0  0x402fd00e in _int_malloc () from /lib/i686/libc.so.6
#1  0x402fc06c in malloc () from /lib/i686/libc.so.6
#2  0x4023369e in operator new(unsigned) () from /usr/lib/libstdc++.so.5
#3  0x402337cd in operator new[](unsigned) () from /usr/lib/libstdc++.so.5
#4  0x0804e0c6 in Polygon (this=0xbffff0e0, p_n_coords=2, p_coords=0xde2d6c8)
    at zm_poly.cpp:55
#5  0x08056ffc in Zone::ParsePolygonString(char const*, Polygon&) (
    poly_string=0xbffff0e0 "\002", polygon=@0xbffff1d0) at zm_zone.cpp:768
#6  0x08057617 in Zone::Load(Monitor*, Zone**&) (monitor=0xde079f0,
    zones=@0xbffff2ac) at zm_zone.cpp:873
#7  0x08062b04 in Monitor::LoadLocalMonitors(char const*, Monitor**&, Monitor::Purpose) (device=0x403b8a74 "Ð5ã\rÐÖâ\r", monitors=@0xbffff338, purpose=CAPTURE)
    at zm_monitor.cpp:1253
#8  0x0804bc07 in main (argc=-1073744130, argv=0xbffff574) at zmc.cpp:161

After commenting out this in src/zm_zone.cpp line 873 zmc seems to work without problems but that should not be the final solution ;) ...

Code: Select all

               /*if ( !ParsePolygonString( Coords, polygon ) )
                        continue;
*/

Has anyone an idea how to solve this issue?

Greetings Michael

Posted: Tue Jan 31, 2006 5:25 pm
by zoneminder
This has been reported when you have saved a new monitor but not set up all the fields correctly. The next version will force you to have valid values but for now you should probably get rid of that monitor and try a new one making sure that all of the basic settings have been filled in.

Posted: Tue Jan 31, 2006 7:36 pm
by carbolineum
OK, after replacing the monitor it works now. Many thanks for the hint :)