Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
  • TortoiseGit TortoiseGit
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 365
    • Issues 365
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 14
    • Merge requests 14
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • TortoiseGitTortoiseGit
  • TortoiseGitTortoiseGit
  • Issues
  • #3770
Closed
Open
Created Jul 17, 2021 by K.Ohgishi@k.ohgishi

TortoiseGitMerge can't apply NonANSI (e.g., UTF-8) patch

What steps will reproduce the problem?

  1. Create a patch containing nonANSI characters.
  2. "Apply unified diff" with created patch.

What is the expected output? What do you see instead?

TortoiseGitMerge can't apply NonANSI patch.

"Could not retrieve revision xxxxxxxx of the file yyy. Patching is not possible!" is displayed in the dialog.

What version of TortoiseGit and Git are you using? On what operating system?

TortoiseGitMerge 2.12.0.0 and master.

Windows 10 64bits

Please provide any additional information below.

In PatchLines.Load(sPatchFile) in CPatch::PatchFile(), PatchLines are already a wide character string. Doing more CUnicodeUtils::GetUnicode(CStringA(sPatchLine)). Therefore I thinks it is necessary to delete CUnicodeUtils::GetUnicode(CStringA(sPatchLine)).

merge_for_NonANSI.diff

Edited Jan 02, 2022 by Sven Strickroth
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking