Hi, When comint-read-input-ring reads history to the ring, the global value of comint-input-ring-size (i.e. 500) is used regardless of the local value due to the use of temp buffer. For example: 1. HISTSIZE=10 emacs -Q 2. M-x shell The buffer-local value of comint-input-ring-size is correctly set to 10, but C-c C-l shows 500 commands. The attached patch fixes the problem that comint-read-input-ring ignores the buffer-local comint-input-ring-size. Thanks.