Table of Contents
Phatch is a free software for image processing. I usually use it to add text to images. Today when I upgraded my computer to Mint 18.3, I encountered an error opening Phatch. Exception: fromstring () has been removed. Please call frombytes () instead.
Error Exception: fromstring () has been removed
First, I open the Phatch in the menu (ie through the GUI) but it just pops up the eye icon and stops there.

I switched to trying to open Phatch with the command line, and then … log error occurred, no one likes errors log.
/usr/lib/python2.7/dist-packages/wx-3.0-gtk2/wx/_core.py:8196: GtkWarning: gtk_disable_setlocale() must be called before gtk_init()
return _core_.PyApp__BootstrapApp(*args, **kwargs)
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk2/wx/_core.py", line 16765, in <lambda>
lambda event: event.callable(*event.args, **event.kw) )
File "/usr/share/phatch/phatch/pyWx/gui.py", line 1218, in show_frame
frame = Frame(self.filename, None, -1, ct.TITLE)
File "/usr/share/phatch/phatch/pyWx/gui.py", line 327, in __init__
frame.Frame.__init__(self, *args, **keyw)
File "/usr/share/phatch/phatch/pyWx/wxGlade/frame.py", line 141, in __init__
self.tree = Tree(self, -1, style=wx.TR_HAS_BUTTONS|wx.TR_NO_LINES|wx.TR_FULL_ROW_HIGHLIGHT|wx.TR_HIDE_ROOT|wx.TR_DEFAULT_STYLE|wx.SUNKEN_BORDER)
File "/usr/share/phatch/phatch/pyWx/wxGlade/frame.py", line 26, in __init__
set_dirty = parent.set_dirty,
File "/usr/share/phatch/phatch/lib/pyWx/treeEdit.py", line 96, in __init__
self.CreateImageList(icon_size)
File "/usr/share/phatch/phatch/lib/pyWx/treeEdit.py", line 111, in CreateImageList
self._AddFormToImageList(form, icon_size, icon_disabled)
File "/usr/share/phatch/phatch/lib/pyWx/treeEdit.py", line 120, in _AddFormToImageList
wx_image = pil_wxImage(wxImage_pil(wx_image).resize(icon_size,\
File "/usr/share/phatch/phatch/lib/pyWx/wxPil.py", line 46, in wxImage_pil
image.fromstring(wx_image.GetData())
File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 746, in fromstring
"Please call frombytes() instead.")
Exception: fromstring() has been removed. Please call frombytes() instead.Use the patch file to fix
After a while, the bug has been confirmed on the development team’s launchpad and also has a patch file. This helps me get better.
You can read more about this bug at this link.
You run the command below to download the patch file.
wget https://bugs.launchpad.net/ubuntu/+source/phatch/+bug/1567827/+attachment/4654235/+files/phatch.diffNext, you apply the patch file to your computer. Note that this requires the sudo or root privileges to perform.
sudo patch -b /usr/share/phatch/phatch/lib/pyWx/wxPil.py phatch.diffConclusion
With just two simple commands, you can fix errors when you start Phatch on your computer. Actually I have not encountered this error before, only after upgrading to Mint 18.3 to meet. Hope you can solve your problem.
(This is an article from my old blog that has been inactive for a long time, I don’t want to throw it away so I will keep it and hope it helps someone).