MCPcopy Create free account
hub / github.com/NetHack/NetHack / commit_bonesfile

Function commit_bonesfile

src/files.c:914–937  ·  view source on GitHub ↗

move completed bones file to proper name */

Source from the content-addressed store, hash-verified

912
913/* move completed bones file to proper name */
914void
915commit_bonesfile(d_level *lev)
916{
917 const char *fq_bones, *tempname;
918 int ret;
919
920 (void) set_bonesfile_name(gb.bones, lev);
921 fq_bones = fqname(gb.bones, BONESPREFIX, 0);
922 tempname = set_bonestemp_name();
923 tempname = fqname(tempname, BONESPREFIX, 1);
924
925#if (defined(SYSV) && !defined(SVR4)) || defined(GENIX)
926 /* old SYSVs don't have rename. Some SVR3's may, but since they
927 * also have link/unlink, it doesn't matter. :-)
928 */
929 (void) unlink(fq_bones);
930 ret = link(tempname, fq_bones);
931 ret += unlink(tempname);
932#else
933 ret = rename(tempname, fq_bones);
934#endif
935 if (wizard && ret != 0)
936 pline("couldn't rename %s to %s.", tempname, fq_bones);
937}
938
939NHFILE *
940open_bonesfile(d_level *lev, char **bonesid)

Callers 1

savebonesFunction · 0.85

Calls 6

set_bonesfile_nameFunction · 0.85
fqnameFunction · 0.85
set_bonestemp_nameFunction · 0.85
unlinkFunction · 0.85
plineFunction · 0.70
renameFunction · 0.50

Tested by

no test coverage detected