Bug#400771: Syntax highlighting causes Vim to hang

James Vega jamessan at debian.org
Mon Jun 18 12:46:01 UTC 2007


Bram,

Given the attached Makefile.am, it is possible to get Vim to hang in an
infinite loop while doing syntax highlighting.  This seems to be
dependant on the height of the Vim window as I am able to reproduce it
with 'lines' set to certain values but not others.

vim -u NONE Makefile.am
:set lines=24
:set ruler  (not necessary but it is useful to see what line the cursor
             is on when Vim starts to hang)
:setf automake
:syn on
j   (press and hold until you reach the end of the file, using G will
     not work)
k   (press and hold until Vim hangs or you reach the top of the file.
     If Vim did not hang, repeat the previous and current steps.  This
     reliably hangs for me when the cursor gets to line 38)

You are able to press <C-c> to break out of the loop that Vim is in but
moving around via j/k is more likely to cause the hang now.

James
-- 
GPG Key: 1024D/61326D40 2003-09-02 James Vega <jamessan at debian.org>
-------------- next part --------------
# See LICENSE.WTFPL

SUBDIRS = doc

ACLOCAL_AMFLAGS = @ACLOCAL_CWFLAGS@
EXTRA_DIST = CwChessBoard.h CwChessBoard-CONST.h \
    debug.h sys.h LICENSE.GPL LICENSE.WTFPL autogen_versions autogen.sh gen.sh
TAGS_FILES = @GLOBAL_TAGS_FILES@
LIBS = @CWD_LIBS@ @GTK2_LIBS@ -lm

TST_SRCS = tst.cc tst_events.cc debug.cc CwChessBoard.cc
if REAL_MAINTAINER
TST_SRCS += gtk_debug_ostream_operators.cc
endif

bin_PROGRAMS = tst
tst_SOURCES = $(TST_SRCS)
tst_CXXFLAGS = @CWD_FLAGS@ @GTK2_FLAGS@
tst_CFLAGS = -std=c99 @GTK2_FLAGS@

if MAINTAINER_MODE
BUILT_SOURCES = $(srcdir)/gen.cc $(srcdir)/CwChessBoard-CONST.h

$(srcdir)/gen.cc: $(srcdir)/gen.sh $(srcdir)/CwChessBoard.cc
	(cd $(srcdir) && ./gen.sh CwChessBoard.cc)

$(srcdir)/CwChessBoard-CONST.h: $(srcdir)/gen.cc
	$(CXX) -o $(srcdir)/gen $(srcdir)/gen.cc && \
	$(srcdir)/gen > $(srcdir)/CwChessBoard-CONST.h
	rm -f $(srcdir)/gen

if REAL_MAINTAINER
bumpversion:
	if test $$(cat $(srcdir)/.last-release) -eq $$(grep '^define(CW_VERSION_REVISION' $(srcdir)/configure.ac | sed -e 's/[^0-9]*//g'); then \
	  sed -ire 's/^\(define(CW_VERSION_REVISION,[[:space:]]*\)\([[:digit:]]*\)\(.*\)/\1'$$(($$(cat $(srcdir)/.last-release) + 1))'\3/' $(srcdir)/configure.ac; \
	  $(MAKE) configure; \
	fi

release: bumpversion dist distcheck all
	rsync -rtz --copy-unsafe-links --chmod=go+r -e /usr/bin/ssh --delete \
	    --exclude=.svn --exclude=env.source ~/www/cwchessboard xs2:~/WWW/cwchessboard && \
	grep '^define(CW_VERSION_REVISION' $(srcdir)/configure.ac | sed -e 's/[^0-9]*//g' > $(srcdir)/.last-release
endif

all-local:
	@if test -e $(top_srcdir)/../.libcwdrc-src -a ! -e .libcwdrc; then \
	  echo "ln -s $(top_srcdir)/../.libcwdrc-src .libcwdrc"; \
	  ln -s $(top_srcdir)/../.libcwdrc-src .libcwdrc; \
	fi
	@if test -e $(top_srcdir)/../.gdbinit-src -a ! -e .gdbinit; then \
	  echo "ln -s $(top_srcdir)/../.gdbinit-src .gdbinit"; \
	  ln -s $(top_srcdir)/../.gdbinit-src .gdbinit; \
	fi
endif

clean-local:
	rm -f core.[0-9]*
	test ! -L .gdbinit || rm .gdbinit
	test ! -L .libcwdrc || rm .libcwdrc
	@MAINTAINER_MODE_TRUE at rm -f gdb.cmds troep* *.cgd @PACKAGE at -@VERSION at .tar.gz

distclean-local:
	rm -f $(srcdir)/config.h.in~

MAINTAINERCLEANFILES = \
	$(srcdir)/aclocal.m4 \
	$(srcdir)/configure \
	$(srcdir)/Makefile.in \
	$(srcdir)/install-sh \
	$(srcdir)/missing \
	$(srcdir)/config.h.in \
	$(srcdir)/depcomp \
	$(srcdir)/config.guess \
	$(srcdir)/config.sub \
	stamp-h1 \
	config.status \
	config.log
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
Url : http://lists.alioth.debian.org/pipermail/pkg-vim-maintainers/attachments/20070618/68a31ab9/attachment.pgp 


More information about the pkg-vim-maintainers mailing list