Mercurial > mxe-octave
view src/readline-2-history.patch @ 5531:eae508c12529
Add build rule for build-octave (bug #49503).
* src/build-octave.mk: Add new build rule for build-octave which can be used for
cross-building binary packages that depend on Octave as a build tool.
* dist-files.mk: Add new file to list.
* index.html: Add new package to list.
* src/of-communications.mk, src/of-image.mk, src/of-mapping.mk,
src/of-optiminterp.mk, src/of-sparsersb.mk, src/of-statistics.mk,
src/of-windows.mk: Add optional dependency on build-octave.
* configure.ac: Add new configure switch "--disable-system-octave" that is
needed to build the build-octave package.
* Makefile.in: Add variable "USE_SYSTEM_OCTAVE". Exclude build-octave from the
default build tools and build it only if a package explicitly depends on it.
Display warning about missing native Octave version only if necessary.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Tue, 08 Sep 2020 23:04:38 +0200 |
parents | d0a95d2c44bf |
children |
line wrap: on
line source
diff -ur readline-8.0.eventhook/histfile.c readline-8.0/histfile.c --- readline-8.0.eventhook/histfile.c 2019-04-03 10:21:42.916563353 -0400 +++ readline-8.0/histfile.c 2019-04-03 16:16:04.605404093 -0400 @@ -107,6 +107,11 @@ # define PATH_MAX 1024 /* default */ #endif +#if defined(_WIN32) + #define WIN32_LEAN_AND_MEAN + #include <windows.h> +#endif + extern void _hs_append_history_line PARAMS((int, const char *)); /* history file version; currently unused */ @@ -139,6 +144,19 @@ static int histfile_backup PARAMS((const char *, const char *)); static int histfile_restore PARAMS((const char *, const char *)); +static int +history_rename(const char *from, const char *to) +{ +#if defined(_WIN32) + if (!MoveFileEx(from, to, MOVEFILE_REPLACE_EXISTING)) { + return -1; + } + return 0; +#else + return rename(from, to); +#endif +} + /* Return the string that should be used in the place of this filename. This only matters when you don't specify the filename to read_history (), or write_history (). */ @@ -448,10 +466,10 @@ if ((n = readlink (filename, linkbuf, sizeof (linkbuf) - 1)) > 0) { linkbuf[n] = '\0'; - return (rename (linkbuf, back)); + return (history_rename (linkbuf, back)); } #endif - return (rename (filename, back)); + return (history_rename (filename, back)); } /* Restore ORIG from BACKUP handling case where ORIG is a symlink @@ -467,10 +485,10 @@ if ((n = readlink (orig, linkbuf, sizeof (linkbuf) - 1)) > 0) { linkbuf[n] = '\0'; - return (rename (backup, linkbuf)); + return (history_rename (backup, linkbuf)); } #endif - return (rename (backup, orig)); + return (history_rename (backup, orig)); } /* Truncate the history file FNAME, leaving only LINES trailing lines.