Free buffer when the framebuffer can't be registered
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 #endif /* CONFIG_FB_ATY_CT */
        info->var = var;
 
-       fb_alloc_cmap(&info->cmap, 256, 0);
+       if (fb_alloc_cmap(&info->cmap, 256, 0) < 0)
+               goto aty_init_exit;
 
-       if (register_framebuffer(info) < 0)
+       if (register_framebuffer(info) < 0) {
+               fb_dealloc_cmap(&info->cmap);
                goto aty_init_exit;
+       }
 
        fb_list = info;