アカウント名:
パスワード:
「mallocの返り値チェック」は有名かと思いますが、そういったエラーチェックを丁寧にやっているかどうか。例外のある言語で、例外のハンドリングをきちんと(ルールを決めて)やっているか。
「実際に使われるアプリケーションのソースコードの半分は、本来の処理ではなくエラーチェック」的な話もどこかで見た覚えがありますので、基本かもしれませんが。基本を守るのが難しい、ということはあるかもしれません。
私も、c++で"out of range"をやらかすことがあるので、気をつけなければ。
mallocの戻り値をチェックしていてもreallocの戻り値をチェックしてないことが多い
hoge = realloc( hoge, hogesize += BUFSIZ );とかやってNULLが返ってきた時に、元のhogeの指すポインタが不明になってメモリリークするパターンとかね。
「mallocの返り値チェック」は有名かと思いますが、そういったエラーチェックを丁寧にやっているかどうか。
思わぬところ [www.moae.jp]で晒されたりしてもカッコ悪いですね。
確かにチェックしてねえ
AndroidのNDKでも使用されているコードのようです。普通にメモリ不足でクラッシュか。OSSは「目玉の数さえ十分あれば、どんなバグも深刻ではない」とは言うけれど、こういう晒され方もあるんですね。
プロジェクトの説明http://sourceforge.net/projects/libcutils/ [sourceforge.net]
コードhttps://github.com/leo-project/libcutil/blob/master/src/lcu_lru.c [github.com]
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ見習い
しっかりエラーチェックをしている (スコア:1)
「mallocの返り値チェック」は有名かと思いますが、そういったエラーチェックを丁寧にやっているかどうか。
例外のある言語で、例外のハンドリングをきちんと(ルールを決めて)やっているか。
「実際に使われるアプリケーションのソースコードの半分は、本来の処理ではなくエラーチェック」的な話もどこかで見た覚えがありますので、基本かもしれませんが。
基本を守るのが難しい、ということはあるかもしれません。
私も、c++で"out of range"をやらかすことがあるので、気をつけなければ。
Re:しっかりエラーチェックをしている (スコア:1)
mallocの戻り値をチェックしていてもreallocの戻り値をチェックしてないことが多い
Re: (スコア:0)
hoge = realloc( hoge, hogesize += BUFSIZ );とかやってNULLが返ってきた時に、元のhogeの指すポインタが不明になってメモリリークするパターンとかね。
Re: (スコア:0)
「mallocの返り値チェック」は有名かと思いますが、そういったエラーチェックを丁寧にやっているかどうか。
思わぬところ [www.moae.jp]で晒されたりしてもカッコ悪いですね。
Re: (スコア:0)
確かにチェックしてねえ
Re: (スコア:0)
AndroidのNDKでも使用されているコードのようです。普通にメモリ不足でクラッシュか。
OSSは「目玉の数さえ十分あれば、どんなバグも深刻ではない」とは言うけれど、こういう晒され方もあるんですね。
プロジェクトの説明
http://sourceforge.net/projects/libcutils/ [sourceforge.net]
コード
https://github.com/leo-project/libcutil/blob/master/src/lcu_lru.c [github.com]