<div dir="ltr"><div>大垣です。</div><div><br></div><div>1つ見逃してました。</div><div>stringを参照する前にチェックしなさい、ということですね。</div><div><br></div><div id="main-source-line-1300" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1300</span><span id="xref-382827931-8-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_string</span> *</div>

<div id="main-source-line-1301" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1301</span><span id="xref-382827867-0-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_substr</span>(</div>

<div id="main-source-line-1302" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1302</span>    <span id="xref-382827931-30-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_string</span> *<span id="xref-L-2445265-2535-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">string</span>,</div>

<div id="main-source-line-1303" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1303</span>    <span id="xref-382827931-4-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_string</span> *<span id="xref-L-2445265-1419-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">result</span>,</div>

<div id="main-source-line-1304" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1304</span>    <span class="" style="color:rgb(137,48,171)">int</span> <span id="xref-L-2445265-1592-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">from</span>,</div>

<div id="main-source-line-1305" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1305</span>    <span class="" style="color:rgb(137,48,171)">int</span> <span id="xref-L-2445265-478-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">length</span>)</div>

<div id="main-source-line-1306" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1306</span>{</div>

<div id="main-source-line-1307" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1307</span>        <span class="" style="font-weight:bold">const</span> <span id="xref-382827796-14-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_encoding</span> *<span id="xref-L-2445265-11-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">encoding</span>;</div>

<div id="main-source-line-1308" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1308</span>        <span class="" style="color:rgb(137,48,171)">int</span> <span id="xref-L-2445265-3194-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">n</span>, <span id="xref-L-2445265-2556-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">m</span>, <span id="xref-L-2445265-1058-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">k</span>, <span id="xref-L-2445265-451-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">len</span>, <span id="xref-L-2445265-1773-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">start</span>, <span id="xref-L-2445265-715-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">end</span>;</div>

<div id="main-source-line-1309" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1309</span>        <span class="" style="font-weight:bold">unsigned</span> <span class="" style="color:rgb(137,48,171)">char</span> *<span id="xref-L-2445265-348-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">p</span>, *<span id="xref-L-2445265-2623-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">w</span>;</div>

<div id="main-source-line-1310" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1310</span>        <span class="" style="font-weight:bold">const</span> <span class="" style="font-weight:bold">unsigned</span> <span class="" style="color:rgb(137,48,171)">char</span> *<span id="xref-L-2445265-2944-1" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbtab</span>;</div>

<div id="main-source-line-1311" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1311</span></div>

<div class="" style="white-space:nowrap;display:table;color:rgb(71,71,71);font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:16px"><div class="" style="display:table-row"><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:table-cell;font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace">    </span><div id="defect-event-13710093-0" class="" style="background-color:rgb(252,242,238);color:rgb(221,68,34);overflow:hidden;padding:2px 2px 2px 25px;white-space:normal;display:table-cell;border:1px solid transparent;background-image:none;background-repeat:no-repeat no-repeat">

<span class="" style="font-weight:bold">deref_ptr:</span> <span class="">Directly dereferencing pointer "string".</span></div></div></div><div id="main-source-line-1312" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1312</span>        <span id="xref-L-2445265-3052-3" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">encoding</span> = <span id="xref-382827808-0-4" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_no2encoding</span>(<span id="xref-L-2445265-1195-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">string</span>-><span id="xref-382827815-6-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">no_encoding</span>);</div>

<div class="" style="white-space:nowrap;display:table;color:rgb(71,71,71);font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:16px"><div class="" style="display:table-row"><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:table-cell;font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace">    </span><div id="defect-event-13710093-1" class="" style="background-color:rgb(252,242,238);color:rgb(221,68,34);overflow:hidden;padding:2px 2px 2px 25px;white-space:normal;display:table-cell;border:1px solid rgb(125,154,170);background-image:url(https://scan5.coverity.com:8443/images/sourcebrowser/marker-code-main-event.png);background-repeat:no-repeat no-repeat">

<span class="" style="display:block;margin-bottom:2px">CID 1108772 (#1 of 1): Dereference before null check (REVERSE_INULL)</span><span class="" style="font-weight:bold">check_after_deref:</span> <span class="">Null-checking "string" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.</span></div>

</div></div><div id="main-source-line-1313" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1313</span>        <span class="" style="font-weight:bold">if</span> (<span id="xref-L-2445265-3071-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">encoding</span> == <span id="xref-382827864-82-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">NULL</span> || <span id="xref-L-2445265-3240-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">string</span> == <span id="xref-382827864-66-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">NULL</span> || <span id="xref-L-2445265-576-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">result</span> == <span id="xref-382827864-44-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">NULL</span>) {</div>

<div id="main-source-line-1314" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1314</span>                <span class="" style="font-weight:bold">return</span> <span id="xref-382827864-157-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">NULL</span>;</div>

<div id="main-source-line-1315" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1315</span>        }</div>

<div id="main-source-line-1316" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1316</span>        <span id="xref-382827794-5-4" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">mbfl_string_init</span>(<span id="xref-L-2445265-1371-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">result</span>);</div>

<div id="main-source-line-1317" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1317</span>        <span id="xref-L-2445265-827-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">result</span>-><span id="xref-382827842-9-3" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">no_language</span> = <span id="xref-L-2445265-2905-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">string</span>-><span id="xref-382827842-10-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">no_language</span>;</div>

<div id="main-source-line-1318" class="" style="color:rgb(0,0,0);font-family:Consolas,'Andale Mono WT','Andale Mono','Lucida Console','Lucida Sans Typewriter','DejaVu Sans Mono','Bitstream Vera Sans Mono','Liberation Mono','Nimbus Mono L',Monaco,'Courier New',Courier,monospace;height:1.3em;white-space:nowrap;font-size:12px;line-height:16px">

<span class="" style="background-color:rgb(238,238,238);color:rgb(191,191,191);vertical-align:top;display:inline-block"></span><span class="" style="background-color:rgb(238,238,238);color:rgb(153,153,153);padding-left:0.3em;padding-right:0.2em;margin-right:0.5em;display:inline-block">1318</span>        <span id="xref-L-2445265-1737-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">result</span>-><span id="xref-382827815-44-3" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">no_encoding</span> = <span id="xref-L-2445265-2010-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">string</span>-><span id="xref-382827815-13-2" class="" style="border-width:1px;border-style:solid;border-color:transparent transparent rgb(204,204,204)">no_encoding</span>;</div>

<div>--<br>Yasuo Ohgaki <br><a href="mailto:yohgaki@ohgaki.net">yohgaki@ohgaki.net</a></div>
</div>