局所的には更に↓のように注意深くコーデイングした方が良いと思う、ただし完璧とまでは言わない。
for (int j = 0; j < n; j++) {
if (resp[j]->resp != nullptr)
free(resp[j]->resp); // nullかも知れないのに確認もなくfreeは怖い
resp[j]->resp = nullptr;
}

>>198
提案・提起だと解釈したので、放っておくより断然良いと考える。
「他の箇所でまだ覚えていると局所的に正い修正が裏目に出る」と言うなら確保したヒープメモリを
操作する時に例えば↓の1ステップを入れると言うコーデイング規約を入れれば更に良くなるのでは。
if (resp[j]->resp != nullptr)

それで free() に関してはWindowsアプリでも同様な問題を抱えてるとは思うけど
Linux固有の問題点は何か?