Simple Scan、XSAne、およびスキャンイメージの分割エラー

Simple Scan、XSAne、およびスキャンイメージの分割エラー

長年Ubuntu 18.04.5 LTSでSimple Scanを使用してきましたが、今日はもう起動できません。ウィンドウが開き、直ちに競合が発生します。 CLIを使用しようとすると、次のメッセージが表示されます。

bugchk_free(ptr=(nil))@modelinf.c(464)
Abandon (core dumped)

代わりにXsaneやscanimageを使ってみましたが、同じ問題が発生しました。 Skanliteが動作しているようです(しかし私のスキャナを認識していません)。

私のlibsaneパッケージは次のとおりですdpkg -l | grep sane

ii  libsane-common                             1.0.27-1~experimental3ubuntu2.2                  all          API library for scanners -- documentation and support files
ii  libsane-hpaio:amd64                        3.17.10+repack0-5                                amd64        HP SANE backend for multi-function peripherals
ii  libsane1:amd64                             1.0.27-1~experimental3ubuntu2.2                  amd64        API library for scanners
ii  sane-utils                                 1.0.30-bionic1                                   amd64        API library for scanners -- utilities

rolfbesnch/sane-releasePPAからアップグレードしようとしましたが、問題は解決しないようです。rolfbensch/sane-gitPPAを試してみるべきですか?

ありがとう、

答え1

私の「Pantum M6500」のセグフォルトを修正しましたscanimage -L

$ scanimage -L
Segmentation fault (core dumped)

tcp ...アイテムを削除して/etc/sane.d/pantum6500.conf

tcp M6500 9200

trace scanimage -L読み取るためにイメージをスキャンし/etc/sane.d/pantum6500.confてTCPポートをバインドしようとしたところ、セグフォルトが発生したことがわかりました。

答え2

一部のアップデートでこの問題が解決したようです。

答え3

Ubuntu 18.04からUbuntu 20.04にアップグレードした後、HP4200 USBスキャナを使用するXsaneで分割エラーの問題が発生します。

私は役に立たない多くのGoogleの提案を見つけました。 HP4200用のバックエンドを設定してコンパイルしましたが、まだクラッシュします。

私はソースコードでデバッグメッセージを有効にしましたが、デバッグメッセージ内で常に同じ場所で競合が発生することがわかりました。

do_fine_calibrationファイルから呼び出されるサブルーチンですhp4200.c。そのサブルーチン内でmemset呼び出され、ここで競合が発生しているようです。

ヌルポインタで呼び出すと、memset存在しないメモリにアクセスしようとします。 Ubuntu 20.04がメモリ管理に関して他の機能を実行しているかどうかを調べようとしましたが、手ぶらで出てきました。

とにかく、このコードはregistroという大きな配列を設定しているようですが、配列へのポインタが存在しないようです!

私はメモリ管理の専門家ではありませんが、いくつかの研究の最後に、登録時に宣言時に0に設定されるように変更することにしました(ライン1377関連 -int registro[30][5460 * 3] = {0};私の変更)。

次に、registro配列memを0に設定するコード部分を削除します(行1496 - 約1505)。

再起動してスキャン画像を開始した後./configurationmake sudo make install見て、モーターが落ちて再スキャンを開始しました!

関連情報