Opened 12 years ago
Last modified 2 months ago
#9092 assigned bug
NoIP Update Client stops on error
Reported by: | kp3ft | Owned by: | axeld |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Kits/Application Kit | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | x86 |
Description (last modified by )
NoIP Update Client runs, but Haiku stops it on an error when attempting any change in NoIP's "settings" window. Using October 23, 2012 Haiku nightly image hrevr1alpha4-44646. NoIP download link: http://haikuware.com/directory/view-details/internet-network/miscellaneous/noip-update-client
Debug info below:
GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-pc-haiku"...(no debugging symbols found) [tcsetpgrp failed in terminal_inferior: Invalid Argument] Thread 4949 caused an exception: Segment violation Reading symbols from /boot/system/runtime_loader...done. Loaded symbols for /boot/system/runtime_loader Reading symbols from /boot/system/lib/libbe.so...done. Loaded symbols for /boot/system/lib/libbe.so Reading symbols from /boot/system/lib/libroot.so...done. Loaded symbols for /boot/system/lib/libroot.so Reading symbols from /boot/system/lib/libnetwork.so...done. Loaded symbols for /boot/system/lib/libnetwork.so Reading symbols from /boot/system/lib/libbnetapi.so...done. Loaded symbols for /boot/system/lib/libbnetapi.so Reading symbols from /boot/system/lib/libstdc++.r4.so...done. Loaded symbols for /boot/system/lib/libstdc++.r4.so Reading symbols from /boot/system/lib/libicudata.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicudata.so.48.1.1 Reading symbols from /boot/system/lib/libicui18n.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicui18n.so.48.1.1 Reading symbols from /boot/system/lib/libicuio.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuio.so.48.1.1 Reading symbols from /boot/system/lib/libicule.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicule.so.48.1.1 Reading symbols from /boot/system/lib/libiculx.so.48.1.1...done. Loaded symbols for /boot/system/lib/libiculx.so.48.1.1 Reading symbols from /boot/system/lib/libicutu.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicutu.so.48.1.1 Reading symbols from /boot/system/lib/libicuuc.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuuc.so.48.1.1 Reading symbols from /boot/common/lib/libcrypto.so.1.0.0...done. Loaded symbols for /boot/common/lib/libcrypto.so.1.0.0 Reading symbols from /boot/common/lib/libssl.so.1.0.0...done. Loaded symbols for /boot/common/lib/libssl.so.1.0.0 Reading symbols from /boot/system/lib/libz.so.1...done. Loaded symbols for /boot/system/lib/libz.so.1 Reading symbols from /boot/system/lib/libroot-addon-icu.so...done. Loaded symbols for /boot/system/lib/libroot-addon-icu.so [tcsetpgrp failed in terminal_inferior: Invalid Argument] [Switching to team /boot/system/bin/NoIp Client (4938) thread w>No-IP Client Settings (4949)] 0x003074d7 in BMessage::_AddField () from /boot/system/lib/libbe.so (gdb)
Attachments (1)
Change History (10)
follow-up: 2 comment:1 by , 12 years ago
comment:2 by , 12 years ago
Replying to kallisti5:
could you run a 'bt' at that gdb prompt? It may give a little additional context info.
Hi, Thanks for the reply. Running bt at the prompt shows:
#0 0x003074d7 in BMessage::_AddField () from /boot/system/lib/libbe.so #1 0x0030777f in BMessage::AddData () from /boot/system/lib/libbe.so #2 0x0030975e in BMessage::AddInt64 () from /boot/system/lib/libbe.so #3 0x0033b756 in BControl::Invoke () from /boot/system/lib/libbe.so #4 0x0032dbfc in BButton::Invoke () from /boot/system/lib/libbe.so #5 0x0032dabf in BButton::MouseUp () from /boot/system/lib/libbe.so #6 0x003d87e5 in BWindow::DispatchMessage () from /boot/system/lib/libbe.so #7 0x003dd610 in BWindow::task_looper () from /boot/system/lib/libbe.so #8 0x00302cff in BLooper::_task0_ () from /boot/system/lib/libbe.so #9 0x005406e3 in thread_entry () from /boot/system/lib/libroot.so #10 0x78074fec in ?? () (gdb)
comment:3 by , 12 years ago
Description: | modified (diff) |
---|
comment:4 by , 12 years ago
It looks just like memory corruption. It's unlikely that Haiku is the cause here, it's probably an application bug.
comment:5 by , 12 years ago
Milestone: | R1/alpha4 → R1/beta1 |
---|---|
Priority: | high → normal |
pushing to beta1 as Axel confirms that Haiku is not likely the cause and the app is 3rd party binary without sources
comment:6 by , 10 years ago
Milestone: | R1/beta1 → R1 |
---|
by , 6 years ago
Attachment: | NoIp Client.zip added |
---|
comment:7 by , 6 years ago
It's not a segmentation fault, and running under the guarded heap produces the exact same result. Instead, it's a divide error; specifically on this line.
If you add the following printf to the function just before the modulo:
printf("hash table size: %" B_PRId32 ", %" B_PRId32 "\n", fHeader->hash_table_size, fHeader->format);
you will always get the following output just before the crash:
hash table size: 0, -42
Printing other fields show they are often uninitialized memory, but hash_table_size is always 0 and format is always -42 no matter what.
comment:8 by , 6 years ago
Component: | Network & Internet → Kits/Application Kit |
---|---|
Owner: | changed from | to
Status: | new → assigned |
comment:9 by , 2 months ago
Keywords: | NoIP client removed |
---|
could you run a 'bt' at that gdb prompt? It may give a little additional context info.