summaryrefslogtreecommitdiff
path: root/src/buffer.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.0.1732: crash when terminal API call deletes the bufferv8.0.1732Bram Moolenaar2018-04-171-1/+16
| | | | | Problem: Crash when terminal API call deletes the buffer. Solution: Lock the buffer while calling a function. (closes #2813)
* patch 8.0.1688: some macros are used without a semicolonv8.0.1688Bram Moolenaar2018-04-101-1/+1
| | | | | | Problem: Some macros are used without a semicolon, causing auto-indent to be wrong. Solution: Use the do-while(0) trick. (Ozaki Kiichi, closes #2729)
* patch 8.0.1651: cannot filter :ls output for terminal buffersv8.0.1651Bram Moolenaar2018-03-291-2/+18
| | | | | Problem: Cannot filter :ls output for terminal buffers. Solution: Add flags for terminal buffers. (Marcin Szamotulski, closes #2751)
* patch 8.0.1650: too many #ifdefsv8.0.1650Bram Moolenaar2018-03-291-35/+10
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_LISTCMDS, no reason to leave out buffer commands.
* patch 8.0.1641: job in terminal can't communicate with Vimv8.0.1641Bram Moolenaar2018-03-251-1/+1
| | | | | Problem: Job in terminal can't communicate with Vim. Solution: Add the terminal API.
* patch 8.0.1633: a TextChanged autocmd triggers when it is definedv8.0.1633Bram Moolenaar2018-03-231-0/+7
| | | | | | | Problem: A TextChanged autocmd triggers when it is defined after creating a buffer. Solution: Set b_last_changedtick when opening a buffer. (Hirohito Highlight, closes #2742)
* patch 8.0.1566: too many #ifdefsv8.0.1566Bram Moolenaar2018-03-041-2/+1
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_SCROLLBIND and FEAT_CURSORBIND.
* patch 8.0.1564: too many #ifdefsv8.0.1564Bram Moolenaar2018-03-041-165/+59
| | | | | | Problem: Too many #ifdefs. Solution: Graduate the +autocmd feature. Takes away 450 #ifdefs and increases code size of tiny Vim by only 40 Kbyte.
* patch 8.0.1525: using :wqa exits even if a job runs in a terminal windowv8.0.1525Bram Moolenaar2018-02-191-2/+2
| | | | | | Problem: Using :wqa exits even if a job runs in a terminal window. (Jason Felice) Solution: Check if a terminal has a running job. (closes #2654)
* patch 8.0.1496: clearing a pointer takes two linesv8.0.1496Bram Moolenaar2018-02-101-12/+6
| | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629)
* patch 8.0.1459: cannot handle change of directoryv8.0.1459Bram Moolenaar2018-02-031-5/+2
| | | | | | Problem: Cannot handle change of directory. Solution: Add the DirChanged autocommand event. (Andy Massimino, closes #888) Avoid changing directory for 'autochdir' too often.
* patch 8.0.1435: memory leak in test_arabicv8.0.1435Bram Moolenaar2018-01-281-0/+1
| | | | | Problem: Memory leak in test_arabic. Solution: Free the from and to parts. (Christian Brabandt, closes #2569)
* patch 8.0.1402: crash with nasty autocommandv8.0.1402Bram Moolenaar2017-12-181-9/+14
| | | | | Problem: Crash with nasty autocommand. (gy741, Dominique Pelle) Solution: Check that the new current buffer isn't wiped out. (closes #2447)
* patch 8.0.1361: some users don't want to diff with hidden buffersv8.0.1361Bram Moolenaar2017-12-011-0/+5
| | | | | Problem: Some users don't want to diff with hidden buffers. Solution: Add the "hiddenoff" item to 'diffopt'. (Alisue, closes #2394)
* patch 8.0.1220: skipping empty statusline groups is not correctv8.0.1220Bram Moolenaar2017-10-261-2/+7
| | | | | Problem: Skipping empty statusline groups is not correct. Solution: Also set group_end_userhl. (itchyny)
* patch 8.0.1215: newer gcc warns for implicit fallthroughv8.0.1215Bram Moolenaar2017-10-241-0/+2
| | | | | Problem: Newer gcc warns for implicit fallthrough. Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt)
* patch 8.0.1208: 'statusline' drops empty group with highlight changev8.0.1208Bram Moolenaar2017-10-221-3/+14
| | | | | | Problem: 'statusline' drops empty group with highlight change. Solution: Do not drop an empty group if it changes highlighting. (Marius Gedminas, closes #2228)
* patch 8.0.1193: crash when wiping out a buffer after using getbufinfo()v8.0.1193Bram Moolenaar2017-10-141-0/+2
| | | | | | Problem: Crash when wiping out a buffer after using getbufinfo(). (Yegappan Lakshmanan) Solution: Remove b:changedtick from the buffer variables.
* patch 8.0.1164: changing StatusLine highlight does not always workv8.0.1164Bram Moolenaar2017-09-301-7/+7
| | | | | | | Problem: Changing StatusLine highlight while evaluating 'statusline' may not change the status line color. Solution: When changing highlighting while redrawing don't cause another redraw. (suggested by Ozaki Kiichi, closes #2171, closes #2120)
* patch 8.0.1119: quitting a split terminal window kills the jobv8.0.1119Bram Moolenaar2017-09-171-20/+20
| | | | | | Problem: Quitting a split terminal window kills the job. (Yasuhiro Matsumoto) Solution: Only stop terminal job if it is the last window.
* patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefsv8.0.1118Bram Moolenaar2017-09-161-100/+21
| | | | | | Problem: FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always enabled and only adds 7% to the binary size of the tiny build. Solution: Graduate FEAT_WINDOWS.
* patch 8.0.1073: may get an endless loop if 'statusline' changes a highlightv8.0.1073Bram Moolenaar2017-09-081-6/+16
| | | | | Problem: May get an endless loop if 'statusline' changes a highlight. Solution: Do not let evaluating 'statusline' trigger a redraw.
* patch 8.0.1013: terminal window behaves different from a buffer with changesv8.0.1013Bram Moolenaar2017-08-291-2/+2
| | | | | | | Problem: A terminal window with a running job behaves different from a window containing a changed buffer. Solution: Do not set 'bufhidden' to "hide". Fix that a buffer where a terminal used to run is listed as "[Scratch]".
* patch 8.0.0953: get "no write since last change" error in terminal windowv8.0.0953Bram Moolenaar2017-08-171-3/+25
| | | | | | Problem: Get "no write since last change" error in terminal window. Solution: Use another message when closing a terminal window. Make ":quit!" also end the job.
* patch 8.0.0935: cannot recognize a terminal buffer in :ls outputv8.0.0935Bram Moolenaar2017-08-131-3/+19
| | | | | Problem: Cannot recognize a terminal buffer in :ls output. Solution: Use R for a running job and F for a finished job.
* patch 8.0.0930: terminal buffers are stored in the viminfo filev8.0.0930Bram Moolenaar2017-08-131-0/+3
| | | | | | Problem: Terminal buffers are stored in the viminfo file while they can't be useful. Solution: Skip terminal buffers for file marks and buffer list
* patch 8.0.0860: side effects when channel appends to a bufferv8.0.0860Bram Moolenaar2017-08-041-1/+44
| | | | | | | Problem: There may be side effects when a channel appends to a buffer that is not the current buffer. Solution: Properly switch to another buffer before appending. (Yasuhiro Matsumoto, closes #1926, closes #1937)
* patch 8.0.0858: can exit while a terminal is still running a jobv8.0.0858Bram Moolenaar2017-08-031-7/+7
| | | | | Problem: Can exit while a terminal is still running a job. Solution: Consider a buffer with a running job like a changed file.
* patch 8.0.0838: buffer hangs around whem terminal window is closedv8.0.0838Bram Moolenaar2017-08-011-0/+25
| | | | | | Problem: Buffer hangs around whem terminal window is closed. Solution: When the job has ended wipe out a terminal buffer when the window is closed.
* patch 8.0.0797: finished job in terminal window is not handledv8.0.0797Bram Moolenaar2017-07-281-1/+1
| | | | | | Problem: Finished job in terminal window is not handled. Solution: Add the scrollback buffer. Use it to fill the buffer when the job has ended.
* patch 8.0.0782: using freed memory in quickfix codev8.0.0782Bram Moolenaar2017-07-271-1/+10
| | | | | Problem: Using freed memory in quickfix code. (Dominique Pelle) Solution: Handle a help window differently. (Yegappan Lakshmanan)
* patch 8.0.0776: function prototypes missing without the quickfix featurev8.0.0776Bram Moolenaar2017-07-251-0/+67
| | | | | | Problem: Function prototypes missing without the quickfix feature. (Tony Mechelynck) Solution: Move non-quickfix functions to buffer.c.
* patch 8.0.0768: terminal window status shows "[Scratch]"v8.0.0768Bram Moolenaar2017-07-241-28/+36
| | | | | | | Problem: Terminal window status shows "[Scratch]". Solution: Show "[Terminal]" when no title was set. (Yasuhiro Matsumoto) Store the terminal title that vterm sends and use it. Update the special buffer name. (closes #1869)
* patch 8.0.0761: options not set properly for a terminal bufferv8.0.0761Bram Moolenaar2017-07-231-10/+16
| | | | | | | | Problem: Options of a buffer for a terminal window are not set properly. Solution: Add "terminal" value for 'buftype'. Make 'buftype' and 'bufhidden' not depend on the quickfix feature. Also set the buffer name and show "running" or "finished" in the window title.
* patch 8.0.0728: the terminal structure is never freedv8.0.0728Bram Moolenaar2017-07-171-1/+4
| | | | | Problem: The terminal structure is never freed. Solution: Free the structure and unreference what it contains.
* patch 8.0.0648: possible use of NULL pointerv8.0.0648Bram Moolenaar2017-06-191-1/+1
| | | | | | Problem: Possible use of NULL pointer if buflist_new() returns NULL. (Coverity) Solution: Check for NULL pointer in set_bufref().
* patch 8.0.0621: :stag does not respect 'switchbuf'v8.0.0621Bram Moolenaar2017-06-051-2/+2
| | | | | | | Problem: The ":stag" command does not respect 'switchbuf'. Solution: Check 'switchbuf' for tag commands that may open a new window. (Ingo Karkat, closes #1681) Define macros for the return values of getfile().
* patch 8.0.0607: after :bwipe + :new bufref might still be validv8.0.0607Bram Moolenaar2017-06-041-7/+12
| | | | | | Problem: When creating a bufref, then using :bwipe and :new it might get the same memory and bufref_valid() returns true. Solution: Add br_fnum to check the buffer number didn't change.
* patch 8.0.0466: still macros that should be all-capsv8.0.0466Bram Moolenaar2017-03-161-1/+1
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps.
* patch 8.0.0448: some macros are in lower casev8.0.0448Bram Moolenaar2017-03-121-4/+4
| | | | | Problem: Some macros are in lower case, which can be confusing. Solution: Make a few lower case macros upper case.
* patch 8.0.0420: text garbled when the system encoding differs from 'encoding'v8.0.0420Bram Moolenaar2017-03-051-0/+3
| | | | | | Problem: When running :make the output may be in the system encoding, different from 'encoding'. Solution: Add the 'makeencoding' option. (Ken Takata)
* patch 8.0.0366: build fails with tiny featuresv8.0.0366Bram Moolenaar2017-02-251-0/+2
| | | | | Problem: Build fails with tiny features. Solution: Add #ifdef.
* patch 8.0.0365: might free a dict item that wasn't allocatedv8.0.0365Bram Moolenaar2017-02-251-23/+11
| | | | | | Problem: Might free a dict item that wasn't allocated. Solution: Call dictitem_free(). (Nikolai Pavlov) Use this for b:changedtick.
* patch 8.0.0345: islocked('d.changedtick') does not workv8.0.0345Bram Moolenaar2017-02-211-1/+1
| | | | | Problem: islocked('d.changedtick') does not work. Solution: Make it work.
* patch 8.0.0340: not checking return valud of dict_add()v8.0.0340Bram Moolenaar2017-02-191-2/+7
| | | | | Problem: Not checking return valud of dict_add(). (Coverity) Solution: Handle a failure.
* patch 8.0.0334: can't access b:changedtick from a dict referencev8.0.0334Bram Moolenaar2017-02-171-2/+33
| | | | | | Problem: Can't access b:changedtick from a dict reference. Solution: Make changedtick a member of the b: dict. (inspired by neovim #6112)
* patch 8.0.0229: local 'formatprg' option value leaksv8.0.0229Bram Moolenaar2017-01-241-0/+1
| | | | | | Problem: When freeing a buffer the local value of the 'formatprg' option is not cleared. Solution: Add missing change.
* patch 8.0.0177: BufEnter autocommand not fired for a directoryv8.0.0177Bram Moolenaar2017-01-131-5/+8
| | | | | | | | Problem: When opening a buffer on a directory and inside a try/catch then the BufEnter event is not triggered. Solution: Return NOTDONE from readfile() for a directory and deal with the three possible return values. (Justin M. Keyes, closes #1375, closes #1353)
* patch 8.0.0110v8.0.0110Bram Moolenaar2016-12-011-2/+2
| | | | | Problem: Drop command doesn't use existing window. Solution: Check the window width properly. (Hirohito Higashi)
* patch 8.0.0073v8.0.0073Bram Moolenaar2016-11-101-2/+2
| | | | | Problem: More comparisons between firstwin and lastwin. Solution: Use ONE_WINDOW for consistency. (Hirohito Higashi)