From: Junio C Hamano Date: Tue, 20 Oct 2015 19:36:02 GMT Subject: Re: [PATCH] git-p4: import the ctypes module Message-ID: In-Reply-To: <1445369506.8543.10.camel@kaarsemaker.net> Dennis Kaarsemaker writes: >> I do not follow Python development, but does the above mean that >> with recent 2.x you can say ctypes without first saying "import >> ctypes"? It feels somewhat non-pythonesque that identifiers like >> this is given to you without you asking with an explicit 'import', >> so I am puzzled. > > No, you cannot do that. The reason others may not have noticed this bug is that > in git-p4.py, ctypes is only used on windows. > > 111 if platform.system() == 'Windows': > 112 free_bytes = ctypes.c_ulonglong(0) > 113 ctypes.windll.kernel32.GetDiskFreeSpaceExW(ctypes.c_wchar_p(os.getcwd()), None, None, ctypes.pointer(free_bytes)) > > The fact that it works for the OP with 2.7.10 is puzzling (assuming that it's > on the same system). Exactly. That is where my "I am puzzled" comes from. The patch looks obviously the right thing to do. Luke? Lars? > > diff --git a/git-p4.py b/git-p4.py > index daa60c6..212ef2b 100755 > --- a/git-p4.py > +++ b/git-p4.py > @@ -24,6 +24,7 @@ import shutil > import stat > import zipfile > import zlib > +import ctypes > > try: > from subprocess import CalledProcessError