view tests/test-username-newline.t @ 45229:0ea08126a2af stable

rebase: fix regression in file change detection introduced by 0ecb3b11fcad Before 0ecb3b11fcad, `wctx._compact()`, was called by `wctx.nofilechanges()` as a side effect. Later, it turned out that this side effect is needed to correctly detect which files changed. See https://phab.mercurial-scm.org/D8733#131949 for the history. The problem could also be triggered by running `tests/test-rebase-parameters.t` with `--extra-config-opt rebase.experimental.inmemory=1`. Differential Revision: https://phab.mercurial-scm.org/D8843
author Manuel Jacob <me@manueljacob.de>
date Tue, 28 Jul 2020 20:47:50 +0200
parents 5ac845ca059a
children 95c4cca641f6
line wrap: on
line source

  $ hg init
  $ touch a

  $ unset HGUSER
  $ echo "[ui]" >> .hg/hgrc
  $ echo "username= foo" >> .hg/hgrc
  $ echo "          bar1" >> .hg/hgrc

  $ hg ci -Am m
  adding a
  abort: username 'foo\nbar1' contains a newline
  
  [255]
  $ rm .hg/hgrc

  $ HGUSER=`(echo foo; echo bar2)` hg ci -Am m
  adding a
  abort: username 'foo\nbar2' contains a newline
  
  [255]
  $ hg ci -Am m -u "`(echo foo; echo bar3)`"
  adding a
  transaction abort!
  rollback completed
  abort: username 'foo\nbar3' contains a newline!
  [255]