| |
| Reporting bugs |
| -------------- |
| |
| Naturally it is easiest for me if you already know what causes the |
| unexpected behavior. Even better if you have a patch to propose. |
| However, quite often the reason for unexpected behavior is unknown, |
| so below are a few things what to do before sending a bug report. |
| |
| In case of a crash (usually segmentation violation): |
| |
| 1. Try to create a small example how to reprocude the issue. |
| |
| 2. If you are writing an application using liblzma or libzfile, |
| double check that you are using the libraries correctly (for |
| example, that you didn't forget to call lzma_init()). If it is |
| the command line tool included in LZMA Utils that is crashing, |
| ignore this step. |
| |
| 3. Compile LZMA Utils with debugging code using configure switch |
| `--enable-debug'. If you are using GCC as the compiler, use |
| CFLAGS='-O0 -ggdb'. Don't strip the resulting binaries. |
| |
| 4. Turn on core dumps. The exact command depends on your shell; |
| for example in GNU bash it is done with `ulimit -c unlimited', |
| and in tcsh with `limit coredumpsize unlimited'. |
| |
| 5. Try to reproduce the suspected bug. If you get `assertion failed' |
| message, be sure to include the complete message in your bug |
| report. If the application leaves a coredump, get a backtrace |
| using gdb: |
| $ gdb /path/to/app-binary # Loads the app to the debugger. |
| (gdb) core core # Opens the coredump. |
| (gdb) bt # Prints the backtrace. Copy & paste to bug report. |
| (gdb) quit # Quits gdb. |
| |
| Send your bug report to Lasse Collin <lasse.collin@tukaani.org>. Don't |
| send the core dump file or the actual executables. If you have a small |
| example file(s) (total size less than 100 KiB), please include it/them |
| as an attachment. |
| |
| Do NOT complain about problems with LZMA Utils to Igor Pavlov. |
| Although the code of LZMA Utils is derived from his code, there are |
| a lot of changes, which may have introduced bugs not present in |
| the original version. |
| |