Comment 24 for bug 40412

Revision history for this message
John A Meinel (jameinel) wrote : Re: [Bug 40412] Re: create .BASE files for --weave (and --lca) merge

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

GuilhemBichot wrote:
> ** Attachment added: "script to repeat a simple merge bug in kdiff3 (wrong automerge)"
> http://launchpadlibrarian.net/36670982/kdiff3_bug.txt
>

When I tested this with 'diff3' it does cause a merge conflict:
<<<<<<< foo.THIS
    if (!thd->is_fatal_error && thd->spcont &&
||||||| foo.BASE
    if (!thd->is_fatal_error &&
=======
    if (!thd->is_fatal_error &&
        ! (MyFlags & ME_NO_SP_HANDLER) &&
>>>>>>> foo.OTHER
        thd->spcont->handle_error(error, MYSQL_ERROR::WARN_LEVEL_ERROR,
thd))
    {
      /*
        Do not push any warnings, a handled error must be completely
        silenced.
      */
      DBUG_VOID_RETURN;
    }

I guess the issue is that they don't really change the *same* line, they
just change neighboring lines. Certainly one could argue for a clean
merge to:

    if (!thd->is_fatal_error && thd->spcont &&
        ! (MyFlags & ME_NO_SP_HANDLER) &&
        thd->spcont->handle_error(error, MYSQL_ERROR::WARN_LEVEL_ERROR,
thd))
    {
      /*
        Do not push any warnings, a handled error must be completely
        silenced.
      */
      DBUG_VOID_RETURN;
    }

(I believe bzr conflicts in this case, as they are modifications on
'touching' lines. But it is at least arguable that the 'same' line was
not modified by both THIS and OTHER.)

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkshfzgACgkQJdeBCYSNAAO9bgCfaPOBypEZsxRGP5K69L0SHTzJ
qacAnR3g4k1p4VRluDjMYISTMLxCAjVH
=FqPM
-----END PGP SIGNATURE-----