static int __init deflate_init(void)
 {
-        int answer = ppp_register_compressor(&ppp_deflate);
-        if (answer == 0)
-                printk(KERN_INFO
-                      "PPP Deflate Compression module registered\n");
-       ppp_register_compressor(&ppp_deflate_draft);
-        return answer;
+       int rc;
+
+       rc = ppp_register_compressor(&ppp_deflate);
+       if (rc)
+               return rc;
+
+       rc = ppp_register_compressor(&ppp_deflate_draft);
+       if (rc) {
+               ppp_unregister_compressor(&ppp_deflate);
+               return rc;
+       }
+
+       pr_info("PPP Deflate Compression module registered\n");
+       return 0;
 }
 
 static void __exit deflate_cleanup(void)