summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2012-09-10 18:11:17 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-09-10 21:54:44 +0100
commit5f40b7a29b2fe957b69c87cce7c8b2e9cf52a4a0 (patch)
tree76457171e6ca700e5a4879ccd767886c6ba2fe05 /bitbake
parent4ec3d7207261d12ff4859982989be7e142e7611d (diff)
downloadast2050-yocto-poky-5f40b7a29b2fe957b69c87cce7c8b2e9cf52a4a0.zip
ast2050-yocto-poky-5f40b7a29b2fe957b69c87cce7c8b2e9cf52a4a0.tar.gz
bitbake: hob: ensure error message text is properly escaped
Our poor implementation of markup escaping was causing invalid markup, leading to the error dialog being blank. Use the glib markup escaping function provided by PyGTK+ to do this properly and avoid the blank error dialogs. Partial fix for [YOCTO #2983]. (Bitbake rev: 563ea5233a5ab1629c51e802d04280692f96c596) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/builder.py14
1 files changed, 3 insertions, 11 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py
index 833577f..a203a06 100755
--- a/bitbake/lib/bb/ui/crumbs/builder.py
+++ b/bitbake/lib/bb/ui/crumbs/builder.py
@@ -21,6 +21,7 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+import glib
import gtk
import copy
import os
@@ -378,15 +379,6 @@ class Builder(gtk.Window):
END_NOOP : None,
}
- @classmethod
- def interpret_markup(cls, msg):
- msg = msg.replace('&', '&amp;')
- msg = msg.replace('<', '&lt;')
- msg = msg.replace('>', '&gt;')
- msg = msg.replace('"', '&quot;')
- msg = msg.replace("'", "&acute;")
- return msg
-
def __init__(self, hobHandler, recipe_model, package_model):
super(Builder, self).__init__()
@@ -783,7 +775,7 @@ class Builder(gtk.Window):
def show_error_dialog(self, msg):
lbl = "<b>Error</b>\n"
- lbl = lbl + "%s\n\n" % Builder.interpret_markup(msg)
+ lbl = lbl + "%s\n\n" % glib.markup_escape_text(msg)
dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_ERROR)
button = dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button)
@@ -971,7 +963,7 @@ class Builder(gtk.Window):
self.build_failed()
def handler_no_provider_cb(self, running_build, msg):
- dialog = CrumbsMessageDialog(self, Builder.interpret_markup(msg), gtk.STOCK_DIALOG_INFO)
+ dialog = CrumbsMessageDialog(self, glib.markup_escape_text(msg), gtk.STOCK_DIALOG_INFO)
button = dialog.add_button("Close", gtk.RESPONSE_OK)
HobButton.style_button(button)
dialog.run()
OpenPOWER on IntegriCloud