gbm: Avoid leaks on screen creation failures
Some of the code paths were not freeing the allocated strings, also remove the unused ret variable as we are always returning -1 on failure.
Some of the code paths were not freeing the allocated strings, also remove the unused ret variable as we are always returning -1 on failure.