You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-shells/bash/files/bash-5.0-history-append.patch

35 lines
1.1 KiB

*** ../bash-5.0-patched/bashhist.c 2018-07-05 22:41:14.000000000 -0400
--- bashhist.c 2019-02-23 17:12:02.000000000 -0500
***************
*** 437,445 ****
char *filename;
{
! int fd, result;
struct stat buf;
result = EXECUTION_SUCCESS;
! if (history_lines_this_session > 0 && (history_lines_this_session <= where_history ()))
{
/* If the filename was supplied, then create it if necessary. */
--- 437,445 ----
char *filename;
{
! int fd, result, histlen;
struct stat buf;
result = EXECUTION_SUCCESS;
! if (history_lines_this_session > 0)
{
/* If the filename was supplied, then create it if necessary. */
***************
*** 454,457 ****
--- 454,461 ----
close (fd);
}
+ /* cap the number of lines we write at the length of the history list */
+ histlen = where_history ();
+ if (histlen > 0 && history_lines_this_session > histlen)
+ history_lines_this_session = histlen; /* reset below anyway */
result = append_history (history_lines_this_session, filename);
/* Pretend we already read these lines from the file because we just