chrome newer version(14) は NPVariant の一部として null で終了する文字列を提供しませんが、firefox は動作が異なり、null で終了する文字列を提供します。それは期待されていますか??
文字列を抽出し、メモリを割り当て、ヌル文字を追加してから、同じ割り当てを解除する以外に何ができますか.....これはすべてヌル文字を追加するためのものですか??
chrome newer version(14) は NPVariant の一部として null で終了する文字列を提供しませんが、firefox は動作が異なり、null で終了する文字列を提供します。それは期待されていますか??
文字列を抽出し、メモリを割り当て、ヌル文字を追加してから、同じ割り当てを解除する以外に何ができますか.....これはすべてヌル文字を追加するためのものですか??
NPVariant NPStrings は、NULL で終了する文字列を含める必要はありません。時々彼らはとにかくしました。ただし、含まれているのは、文字列の長さを示す「長さ」です。私は通常、次のように std::string に変換します。
retVal = std::string(npVar->value.stringValue.UTF8Characters, npVar->value.stringValue.UTF8Length);
それがFireBreath のやり方です。https://github.com/firebreath/FireBreath/blob/master/src/NpapiCore/NpapiBrowserHost.cpp#L253