AquaNet IT Business
One stop shopping for the business
SECOND DECADE

from 2010 when it's begining Smartphone age.

free(): double free detected in tcache 2

3月
31
2020
Back
HOME


C言語のノロノロ勉強を始めて3年目、表題のようなエラーに翻弄されてしまった。

free() という句は malloc のところで出て来た記憶がある程度で、どちらも未だ使用したこともなかった。


検索してみると、色々出て来るが、大分状況が違うようで理解が追いつかない。

ある時突然現れたので、もう一度自分のミスを追いかける作業をしてみた所、結果は次のようなものであった。

int main(void)
{
        :
        test();
        :
        return(0);
}

void test(void)
{
        if (fp = popen([commandline],"r") !=NULL)
        {
                :
                :
                pclose(fp);    // クローズ1
        }
        pclose(fp);            // クローズ2・・・・・こちらに統一することにした
        return;
}


Back
HOME