all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Merge in revno 100770
@ 2010-07-15 16:38 Eli Zaretskii
  2010-07-15 17:17 ` Andreas Schwab
  0 siblings, 1 reply; 3+ messages in thread
From: Eli Zaretskii @ 2010-07-15 16:38 UTC (permalink / raw)
  To: Chong Yidong; +Cc: emacs-devel

This merge from the emacs-23 branch:

  100770: Chong Yidong 2010-07-10 [merge] Merge changes from emacs-23 branch.

somehow managed to revert changes I did in fringe.c for bidi-aware
display of continuation bitmaps on the fringes (because obviously,
there's no such code on the branch).  Specifically, it was due to the
merge of this bugfix commit on the branch:

  99634.2.281: YAMAMOTO Mitsuharu 2010-07-05 Fix ghost buffer boundary
               indicators in fringes (Bug#5634, Bug#6325).

Do we know how could that happen?  Was that some snafu during manual
resolution of text conflicts, or a problem in Bazaar's automatic
merges?

For the record, the changes that were reverted are these, which were
part of a merge-commit I did in revno 99950 on the trunk:

  === modified file 'src/fringe.c'
  --- src/fringe.c	2010-04-10 16:28:30 +0000
  +++ src/fringe.c	2010-04-17 12:33:05 +0000
  @@ -1090,7 +1090,8 @@ update_window_fringes (w, keep_current_p
		  : LEFT_FRINGE (2, Qtop, 0));
	 else if (row->indicate_eob_p && EQ (boundary_bot, Qleft))
	  left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p);
  -      else if (MATRIX_ROW_CONTINUATION_LINE_P (row))
  +      else if ((!row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row))
  +	       || (row->reversed_p && row->continued_p))
	  left = LEFT_FRINGE (4, Qcontinuation, 0);
	 else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft))
	  left = LEFT_FRINGE (5, Qempty_line, 0);
  @@ -1117,7 +1118,8 @@ update_window_fringes (w, keep_current_p
		   : RIGHT_FRINGE (2, Qtop, 0));
	 else if (row->indicate_eob_p && EQ (boundary_bot, Qright))
	  right = RIGHT_FRINGE (3, Qbottom, row->ends_at_zv_p);
  -      else if (row->continued_p)
  +      else if ((!row->reversed_p && row->continued_p)
  +	       || (row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row)))
	  right = RIGHT_FRINGE (4, Qcontinuation, 0);
	 else if (row->indicate_top_line_p && EQ (arrow_top, Qright))
	  right = RIGHT_FRINGE (6, Qup, 0);




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Merge in revno 100770
  2010-07-15 16:38 Merge in revno 100770 Eli Zaretskii
@ 2010-07-15 17:17 ` Andreas Schwab
  2010-07-15 21:37   ` Bojan Nikolic
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2010-07-15 17:17 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Chong Yidong, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> This merge from the emacs-23 branch:
>
>   100770: Chong Yidong 2010-07-10 [merge] Merge changes from emacs-23 branch.
>
> somehow managed to revert changes I did in fringe.c for bidi-aware
> display of continuation bitmaps on the fringes (because obviously,
> there's no such code on the branch).  Specifically, it was due to the
> merge of this bugfix commit on the branch:
>
>   99634.2.281: YAMAMOTO Mitsuharu 2010-07-05 Fix ghost buffer boundary
>                indicators in fringes (Bug#5634, Bug#6325).
>
> Do we know how could that happen?

It looks like a wrong conflict resolution.  You can see the actual
conflicts with

  git show 036075de6587c79f9b609a68ddf4be09bd3a05ef src/fringe.c

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Merge in revno 100770
  2010-07-15 17:17 ` Andreas Schwab
@ 2010-07-15 21:37   ` Bojan Nikolic
  0 siblings, 0 replies; 3+ messages in thread
From: Bojan Nikolic @ 2010-07-15 21:37 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eli Zaretskii, Chong Yidong, emacs-devel


Andreas Schwab <schwab@linux-m68k.org> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>> Do we know how could that happen?
>
> It looks like a wrong conflict resolution.  You can see the actual
> conflicts with
>
>   git show 036075de6587c79f9b609a68ddf4be09bd3a05ef src/fringe.c
>

Maybe there is a better way, but you can replay this situation in bzr by
itself with the following sequence of commands:

# Check-out of tree as it was just before the problematic merge. I
# assume in current working directory, the directory "trunk" contains
# the emacs trunk branch. If not replace "trunk/" by for example
# lp:emacs

bzr co -r 100769 trunk/ merge-problem-explain

# Replay the merge
cd merge-problem-explain
bzr merge  -r 99634.2.281 ../trunk/

..... other output............
Text conflict in src/fringe.c
....  other output ..........

If you look at the conflict t is easy to see how it can have been
resolved incorrectly. 

A suggestion related to this:

I would recommend running merge with the "--show-base" option (if this
isn't what you do anyway). In this the conflict would have been
displayed as:

,----
| <<<<<<< TREE
| 	left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p);
|       else if ((!row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row))
| 	       || (row->reversed_p && row->continued_p))
| ||||||| BASE-REVISION
| 	left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p);
|       else if (MATRIX_ROW_CONTINUATION_LINE_P (row))
| =======
| 	{
| 	  left = LEFT_FRINGE (3, Qbottom, bot_row_ends_at_zv_p);
| 	  if (bot_ind_max_y >= 0)
| 	    left_offset = bot_ind_max_y - (row->y + row->visible_height);
| 	}
|       else if (MATRIX_ROW_CONTINUATION_LINE_P (row))
| >>>>>>> MERGE-SOURCE
`----

making it rather easier to understand the conflict.

Best,
Bojan


-- 
Bojan Nikolic          ||          http://www.bnikolic.co.uk



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-07-15 21:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-15 16:38 Merge in revno 100770 Eli Zaretskii
2010-07-15 17:17 ` Andreas Schwab
2010-07-15 21:37   ` Bojan Nikolic

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.