cairo-util: Only look at first two bytes for jpegs

The next two bytes aren't fixed.
diff --git a/clients/cairo-util.c b/clients/cairo-util.c
index bdad696..2f780a7 100644
--- a/clients/cairo-util.c
+++ b/clients/cairo-util.c
@@ -1,5 +1,6 @@
 /*
  * Copyright © 2008 Kristian Høgsberg
+ * Copyright © 2012 Intel Corporation
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -518,7 +519,7 @@
 {
 	cairo_surface_t *surface;
 	static const unsigned char png_header[] = { 0x89, 'P', 'N', 'G' };
-	static const unsigned char jpeg_header[] = { 0xff, 0xd8, 0xff, 0xe0 };
+	static const unsigned char jpeg_header[] = { 0xff, 0xd8 };
 	unsigned char header[4];
 	FILE *fp;
 
@@ -528,9 +529,9 @@
 
 	fread(header, sizeof header, 1, fp);
 	rewind(fp);
-	if (memcmp(header, png_header, sizeof header) == 0)
+	if (memcmp(header, png_header, sizeof png_header) == 0)
 		surface = load_png(fp);
-	else if (memcmp(header, jpeg_header, sizeof header) == 0)
+	else if (memcmp(header, jpeg_header, sizeof jpeg_header) == 0)
 		surface = load_jpeg(fp);
 	else {
 		fprintf(stderr, "unrecognized file header for %s: "