dump_mem(out, ch->add, ch->add_len, hash);
}
dump_rest(out, in, hash);
dump_mem(out, ch->add, ch->add_len, hash);
}
dump_rest(out, in, hash);
std::cerr << "FAILED to open inp " << Path << std::endl;
return _error->Error("Failed to open inp %s", Path.c_str());
}
std::cerr << "FAILED to open inp " << Path << std::endl;
return _error->Error("Failed to open inp %s", Path.c_str());
}
- if (out.Open(Itm->DestFile, FileFd::WriteOnly | FileFd::Create, FileFd::Extension) == false)
+ if (out.Open(Itm->DestFile, FileFd::WriteOnly | FileFd::Create | FileFd::BufferedWrite, FileFd::Extension) == false)
{
std::cerr << "FAILED to open out " << Itm->DestFile << std::endl;
return _error->Error("Failed to open out %s", Itm->DestFile.c_str());
{
std::cerr << "FAILED to open out " << Itm->DestFile << std::endl;
return _error->Error("Failed to open out %s", Itm->DestFile.c_str());
// Usage: rred -t input output diff ...
if (argc > 1 && strcmp(argv[1], "-t") == 0) {
// Usage: rred -t input output diff ...
if (argc > 1 && strcmp(argv[1], "-t") == 0) {
FileFd out, inp;
std::cerr << "Patching " << argv[2] << " into " << argv[3] << "\n";
inp.Open(argv[2], FileFd::ReadOnly,FileFd::Extension);
FileFd out, inp;
std::cerr << "Patching " << argv[2] << " into " << argv[3] << "\n";
inp.Open(argv[2], FileFd::ReadOnly,FileFd::Extension);
inp.OpenDescriptor(STDIN_FILENO, FileFd::ReadOnly);
patch.apply_against_file(out, inp);
inp.OpenDescriptor(STDIN_FILENO, FileFd::ReadOnly);
patch.apply_against_file(out, inp);