1c1
< /* $FreeBSD: head/contrib/libreadline/display.c 157188 2006-03-27 23:11:32Z ache $ */
---
> /* $FreeBSD: head/contrib/libreadline/display.c 157195 2006-03-27 23:53:05Z ache $ */
1987c1987
< char *pmt;
---
> char *pmt, *p;
1991c1991,1995
< if (saved_local_prompt == 0)
---
> /* We've saved the prompt, and can do anything with the various prompt
> strings we need before they're restored. We want the unexpanded
> portion of the prompt string after any final newline. */
> p = rl_prompt ? strrchr (rl_prompt, '\n') : 0;
> if (p == 0)
2002c2006,2007
< len = *saved_local_prompt ? strlen (saved_local_prompt) : 0;
---
> p++;
> len = strlen (p);
2005c2010
< strcpy (pmt, saved_local_prompt);
---
> strcpy (pmt, p);
2008,2011c2013
< local_prompt = savestring (pmt);
< prompt_last_invisible = saved_last_invisible;
< prompt_visible_length = saved_visible_length + 1;
< }
---
> }
2012a2015
> /* will be overwritten by expand_prompt, called from rl_message */
2014d2016
<
< /* $FreeBSD: head/contrib/libreadline/display.c 157188 2006-03-27 23:11:32Z ache $ */
---
> /* $FreeBSD: head/contrib/libreadline/display.c 157195 2006-03-27 23:53:05Z ache $ */
1987c1987
< char *pmt;
---
> char *pmt, *p;
1991c1991,1995
< if (saved_local_prompt == 0)
---
> /* We've saved the prompt, and can do anything with the various prompt
> strings we need before they're restored. We want the unexpanded
> portion of the prompt string after any final newline. */
> p = rl_prompt ? strrchr (rl_prompt, '\n') : 0;
> if (p == 0)
2002c2006,2007
< len = *saved_local_prompt ? strlen (saved_local_prompt) : 0;
---
> p++;
> len = strlen (p);
2005c2010
< strcpy (pmt, saved_local_prompt);
---
> strcpy (pmt, p);
2008,2011c2013
< local_prompt = savestring (pmt);
< prompt_last_invisible = saved_last_invisible;
< prompt_visible_length = saved_visible_length + 1;
< }
---
> }
2012a2015
> /* will be overwritten by expand_prompt, called from rl_message */
2014d2016
<