added custom methods for glShaderSource(ARB)