あれ fprintf がうまくいかないな

FILE* fp = fopen(historyPath_.c_str(), "a");
if (fp == NULL) {
    return;
}
if (fseek(fp, 0, SEEK_END) == -1) {
    fclose(fp);
    return;
}
fprintf(fp, "%s\n", text.c_str());
fclose(fp);