gfx/angle/angle-castrate-bug-241.patch
author Gian-Carlo Pascutto <gpascutto@mozilla.com>
Tue, 17 Apr 2012 22:01:28 +0200
changeset 91893 36c22a5ddbe5d92cc55d0fbbcbf827cc4ad02067
parent 88244 71995d5b92a111a7e2d42abc8299f2e664050cee
permissions -rw-r--r--
Bug 715550 - Migration of Sync settings from XUL Fennec. r=mfinkle a=blocking-fennec a=mfinkle

# HG changeset patch
# User Benoit Jacob <bjacob@mozilla.com>
# Parent 7dcbce54a953090ae8e537f93c6c99ab8eb0dc62

diff --git a/gfx/angle/README.mozilla b/gfx/angle/README.mozilla
--- a/gfx/angle/README.mozilla
+++ b/gfx/angle/README.mozilla
@@ -4,16 +4,17 @@ Current revision: r963
 
 == Applied local patches ==
 
 In this order:
   angle-renaming-debug.patch - rename debug.h to compilerdebug.h to avoid conflict in our makefiles
   angle-intrinsic-msvc2005.patch - work around a MSVC 2005 compile error
   angle-limit-identifiers-to-250-chars.patch - see bug 675625
   angle-use-xmalloc.patch - see bug 680840. Can drop this patch whenever the new preprocessor lands.
+  angle-castrate-bug-241.patch - see bug 699033 / angle bug 241
 
 In addition to these patches, the Makefile.in files are ours, they're not present in upsteam ANGLE.
 
 == How to update this ANGLE copy ==
 
 1. Unapply patches
 2. Apply diff with new ANGLE version
 3. Reapply patches.
diff --git a/gfx/angle/src/compiler/Types.h b/gfx/angle/src/compiler/Types.h
--- a/gfx/angle/src/compiler/Types.h
+++ b/gfx/angle/src/compiler/Types.h
@@ -5,16 +5,17 @@
 //
 
 #ifndef _TYPES_INCLUDED
 #define _TYPES_INCLUDED
 
 #include "compiler/BaseTypes.h"
 #include "compiler/Common.h"
 #include "compiler/compilerdebug.h"
+#include <cstdlib>
 
 //
 // Need to have association of line numbers to types in a list for building structs.
 //
 class TType;
 struct TTypeLine {
     TType* type;
     int line;
@@ -203,17 +204,17 @@ public:
     bool isVector() const { return size > 1 && !matrix; }
     bool isScalar() const { return size == 1 && !matrix && !structure; }
 
     TTypeList* getStruct() const { return structure; }
     void setStruct(TTypeList* s) { structure = s; computeDeepestStructNesting(); }
 
     const TString& getTypeName() const
     {
-        assert(typeName);
+        if(!typeName) abort();
         return *typeName;
     }
     void setTypeName(const TString& n)
     {
         typeName = NewPoolTString(n.c_str());
     }
 
     bool isField() const { return fieldName != 0; }