Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • thg thg
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 837
    • Issues 837
    • List
    • Boards
    • Service Desk
    • Milestones
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • mercurial
  • TortoiseHg
  • thgthg
  • Issues
  • #2105

Closed
Open
Created Aug 25, 2012 by Bitbucket Importer@bitbucket_importerOwner

Python OSError: [Errno 84] , when there is (or was) unsupported character in a the name of a workingcopy entry

Created originally on Bitbucket by Anonymous

The shown abort (and many similar) will show up, if there is (or was) a character unsupported by the python filesystem support in any of the file or directory names within a working copy. In this case it was a o-Umlaut (ö) in a NTFS-partition mounted with ntfs3g in Ubuntu 12.10.

{{{ ** Mercurial version (2.3). TortoiseHg version (2.4.3) ** Command: log ** CWD: /home/... ** Encoding: UTF-8 ** Extensions loaded: qct ** Python version: 2.7.3 (default, Aug 1 2012, 05:14:39) [GCC 4.6.3] ** Qt-4.8.1 PyQt-4.9.1 Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/repowidget.py", line 1681, in visualDiffRevision dlg = visdiff.visualdiff(self.repo.ui, self.repo, [], opts) File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/visdiff.py", line 208, in visualdiff mod_a, add_a, rem_a = map(set, repo.status(ctx1a.node(), n2, m)[:3]) File "/usr/lib/python2.7/dist-packages/mercurial/localrepo.py", line 1567, in status listclean, listunknown) File "/usr/lib/python2.7/dist-packages/mercurial/dirstate.py", line 752, in status listignored).iteritems(): File "/usr/lib/python2.7/dist-packages/mercurial/dirstate.py", line 698, in walk for nf, st in zip(visit, util.statfiles([join(i) for i in visit])): File "/usr/lib/python2.7/dist-packages/mercurial/posix.py", line 351, in statfiles st = lstat(nf) OSError: [Errno 84] Ungültiges oder unvollständiges Multi-Byte- oder Wide-Zeichen: '/ (...) /examples/aufl\xf6sungen' }}} Interestingly, the directory was created within Ubuntu (from within Java) and there was no problem displaying the directory with standard OS tools, e. g. ls, Thunar, etc. Even removing it from the working copy and committing was successfull.

Up to then, even pushing the WC to another repo seemed OK, but after that any other operation requiring a traversal of this directory failed, which means: It is possible to render a working copy and a connected repo unusuable by having a funny character somewhere

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking