[hb-view] Handle write_to_png errors
diff --git a/src/hb-view.c b/src/hb-view.c
index dcb9571..5c0c48c 100644
--- a/src/hb-view.c
+++ b/src/hb-view.c
@@ -324,6 +324,8 @@
 int
 main (int argc, char **argv)
 {
+  cairo_status_t status;
+
   parse_opts (argc, argv);
 
   FT_Init_FreeType (&ft_library);
@@ -336,7 +338,12 @@
   draw ();
   draw ();
 
-  cairo_surface_write_to_png (surface, out_file);
+  status = cairo_surface_write_to_png (surface, out_file);
+  if (status != CAIRO_STATUS_SUCCESS) {
+    fprintf (stderr, "Failed to write output file `%s': %s\n",
+	     out_file, cairo_status_to_string (status));
+    exit (1);
+  }
 
   return 0;
 }