srcanamdw/codescanner/pyinstaller/hooks/hook-PIL.Image.py
changeset 1 22878952f6e2
equal deleted inserted replaced
0:509e4801c378 1:22878952f6e2
       
     1 # Copyright (C) 2005, Giovanni Bajo
       
     2 # Based on previous work under copyright (c) 2001, 2002 McMillan Enterprises, Inc.
       
     3 #
       
     4 # This program is free software; you can redistribute it and/or
       
     5 # modify it under the terms of the GNU General Public License
       
     6 # as published by the Free Software Foundation; either version 2
       
     7 # of the License, or (at your option) any later version.
       
     8 #
       
     9 # This program is distributed in the hope that it will be useful,
       
    10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       
    12 # GNU General Public License for more details.
       
    13 #
       
    14 # You should have received a copy of the GNU General Public License
       
    15 # along with this program; if not, write to the Free Software
       
    16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
       
    17 
       
    18 hiddenimports = []
       
    19 
       
    20 # FIXME: for a strange bug in Python's import machinery, we need to adjust
       
    21 # the module name before proceeding to the PIL import. The name would
       
    22 # otherwise be "hooks.hook-PIL.Image", which will then produce this
       
    23 # monstruosity:
       
    24 #   <module 'hooks.hook-PIL.PIL.Image' from 'C:\python24\lib\site-packages\PIL\Image.pyc'>
       
    25 #
       
    26 __name__ = "hook-image"
       
    27 
       
    28 def install_Image(lis):
       
    29     import Image
       
    30     # PIL uses lazy initialization.
       
    31     # you candecide if you want only the
       
    32     # default stuff:
       
    33     Image.preinit()
       
    34     # or just everything:
       
    35     Image.init()
       
    36     import sys
       
    37     for name in sys.modules:
       
    38         if name[-11:] == "ImagePlugin":
       
    39             lis.append(name)
       
    40 
       
    41 install_Image(hiddenimports)