aboutsummaryrefslogtreecommitdiff
path: root/nexgb/xgbgen/go_error.go
diff options
context:
space:
mode:
authorAndrew Gallant (Ocelot) <Andrew.Gallant@tufts.edu>2012-05-05 18:21:48 -0400
committerAndrew Gallant (Ocelot) <Andrew.Gallant@tufts.edu>2012-05-05 18:21:48 -0400
commitb6715f376f5ea3efb58146c58924dcc7b1536181 (patch)
treee1213eb0678619a74b1ba57153827d58b645c48a /nexgb/xgbgen/go_error.go
parent4a7b05be36b96134b4dae3ca385e9bfbb797d531 (diff)
downloadhaven-b6715f376f5ea3efb58146c58924dcc7b1536181.tar.gz
haven-b6715f376f5ea3efb58146c58924dcc7b1536181.tar.xz
haven-b6715f376f5ea3efb58146c58924dcc7b1536181.zip
fixing bugs related mostly to extension handling
Diffstat (limited to 'nexgb/xgbgen/go_error.go')
-rw-r--r--nexgb/xgbgen/go_error.go14
1 files changed, 9 insertions, 5 deletions
diff --git a/nexgb/xgbgen/go_error.go b/nexgb/xgbgen/go_error.go
index 5a51064..152db8b 100644
--- a/nexgb/xgbgen/go_error.go
+++ b/nexgb/xgbgen/go_error.go
@@ -64,11 +64,15 @@ func (e *Error) ImplementsError(c *Context) {
c.Putln("}")
c.Putln("")
c.Putln("func (err %s) BadId() Id {", e.ErrType())
- c.Putln("return Id(err.BadValue)")
+ if c.protocol.Name == "xproto" {
+ c.Putln("return Id(err.BadValue)")
+ } else {
+ c.Putln("return 0")
+ }
c.Putln("}")
c.Putln("")
c.Putln("func (err %s) Error() string {", e.ErrType())
- FieldString(c, e.Fields, e.ErrConst())
+ ErrorFieldString(c, e.Fields, e.ErrConst())
c.Putln("}")
c.Putln("")
}
@@ -119,14 +123,14 @@ func (e *ErrorCopy) ImplementsError(c *Context) {
c.Putln("}")
c.Putln("")
c.Putln("func (err %s) Error() string {", e.ErrType())
- FieldString(c, e.Old.(*Error).Fields, e.ErrConst())
+ ErrorFieldString(c, e.Old.(*Error).Fields, e.ErrConst())
c.Putln("}")
c.Putln("")
}
-// FieldString works for both Error and ErrorCopy. It assembles all of the
+// ErrorFieldString works for both Error and ErrorCopy. It assembles all of the
// fields in an error and formats them into a single string.
-func FieldString(c *Context, fields []Field, errName string) {
+func ErrorFieldString(c *Context, fields []Field, errName string) {
c.Putln("fieldVals := make([]string, 0, %d)", len(fields))
c.Putln("fieldVals = append(fieldVals, \"NiceName: \" + err.NiceName)")
c.Putln("fieldVals = append(fieldVals, " +