tree 0135c7f11c1ef3cf175f9df4c1dfe001c5bd95ec
parent 185991d54796a41e13527ef59418102af2e7a417
author Maxwell <max.morais.dmm@gmail.com> 1381953121 -0300
committer Maxwell <max.morais.dmm@gmail.com> 1381953121 -0300

Fix UnicodeDecodeError

```python
Traceback (most recent call last):
  File "install_erpnext.py", line 348, in <module>
    install()
  File "install_erpnext.py", line 13, in install
    install_pre_requisites()
  File "install_erpnext.py", line 25, in install_pre_requisites
    install_using_yum()
  File "install_erpnext.py", line 90, in install_using_yum
    update_config_for_redhat()
  File "install_erpnext.py", line 106, in update_config_for_redhat
    exec_in_shell("chkconfig --level 2345 %s on" % service)
  File "install_erpnext.py", line 339, in exec_in_shell
    if err and any((kw in err.lower() for kw in ["traceback", "error", "exception"])):
  File "install_erpnext.py", line 339, in <genexpr>
    if err and any((kw in err.lower() for kw in ["traceback", "error", "exception"])):
```