Avoid adding duplicate struct constructors.
TRAC #20057
ISSUE=285
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@1006 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/compiler/OutputHLSL.cpp b/src/compiler/OutputHLSL.cpp
index cfd1aef..3edbf84 100644
--- a/src/compiler/OutputHLSL.cpp
+++ b/src/compiler/OutputHLSL.cpp
@@ -2106,6 +2106,11 @@
return; // Nameless structures don't have constructors
}
+ if (type.getStruct() && mStructNames.find(decorate(name)) != mStructNames.end())
+ {
+ return; // Already added
+ }
+
TType ctorType = type;
ctorType.clearArrayness();
ctorType.setPrecision(EbpHigh);