Allow passing nil to LoadShader, issue #172
This commit is contained in:
parent
e4777d30ee
commit
b144285481
1 changed files with 16 additions and 6 deletions
|
@ -24,15 +24,17 @@ func LoadShader(vsFileName string, fsFileName string) Shader {
|
||||||
cfsFileName := C.CString(fsFileName)
|
cfsFileName := C.CString(fsFileName)
|
||||||
defer C.free(unsafe.Pointer(cfsFileName))
|
defer C.free(unsafe.Pointer(cfsFileName))
|
||||||
|
|
||||||
var v Shader
|
|
||||||
if vsFileName == "" {
|
if vsFileName == "" {
|
||||||
ret := C.LoadShader(nil, cfsFileName)
|
cvsFileName = nil
|
||||||
v = newShaderFromPointer(unsafe.Pointer(&ret))
|
|
||||||
} else {
|
|
||||||
ret := C.LoadShader(cvsFileName, cfsFileName)
|
|
||||||
v = newShaderFromPointer(unsafe.Pointer(&ret))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if fsFileName == "" {
|
||||||
|
cfsFileName = nil
|
||||||
|
}
|
||||||
|
|
||||||
|
ret := C.LoadShader(cvsFileName, cfsFileName)
|
||||||
|
v := newShaderFromPointer(unsafe.Pointer(&ret))
|
||||||
|
|
||||||
return v
|
return v
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,6 +46,14 @@ func LoadShaderFromMemory(vsCode string, fsCode string) Shader {
|
||||||
cfsCode := C.CString(fsCode)
|
cfsCode := C.CString(fsCode)
|
||||||
defer C.free(unsafe.Pointer(cfsCode))
|
defer C.free(unsafe.Pointer(cfsCode))
|
||||||
|
|
||||||
|
if vsCode == "" {
|
||||||
|
cvsCode = nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if fsCode == "" {
|
||||||
|
cfsCode = nil
|
||||||
|
}
|
||||||
|
|
||||||
ret := C.LoadShaderFromMemory(cvsCode, cfsCode)
|
ret := C.LoadShaderFromMemory(cvsCode, cfsCode)
|
||||||
v := newShaderFromPointer(unsafe.Pointer(&ret))
|
v := newShaderFromPointer(unsafe.Pointer(&ret))
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue