Index: uspace/lib/draw/codec/tga.gz.c
===================================================================
--- uspace/lib/draw/codec/tga.gz.c	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/codec/tga.gz.c	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -59,5 +59,5 @@
 	size_t size_expanded;
 	
-	int ret = gzip_expand(data, size, &data_expanded, &size_expanded);
+	errno_t ret = gzip_expand(data, size, &data_expanded, &size_expanded);
 	if (ret != EOK)
 		return NULL;
Index: uspace/lib/draw/font.c
===================================================================
--- uspace/lib/draw/font.c	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font.c	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -60,13 +60,13 @@
 }
 
-int font_get_metrics(font_t *font, font_metrics_t *metrics) {
+errno_t font_get_metrics(font_t *font, font_metrics_t *metrics) {
 	return font->backend->get_font_metrics(font->backend_data, metrics);
 }
 
-int font_resolve_glyph(font_t *font, wchar_t c, glyph_id_t *glyph_id) {
+errno_t font_resolve_glyph(font_t *font, wchar_t c, glyph_id_t *glyph_id) {
 	return font->backend->resolve_glyph(font->backend_data, c, glyph_id);
 }
 
-int font_get_glyph_metrics(font_t *font, glyph_id_t glyph_id,
+errno_t font_get_glyph_metrics(font_t *font, glyph_id_t glyph_id,
     glyph_metrics_t *glyph_metrics)
 {
@@ -75,5 +75,5 @@
 }
 
-int font_render_glyph(font_t *font, drawctx_t *context, source_t *source,
+errno_t font_render_glyph(font_t *font, drawctx_t *context, source_t *source,
     sysarg_t x, sysarg_t y, glyph_id_t glyph_id)
 {
@@ -83,8 +83,8 @@
 
 /* TODO this is bad interface */
-int font_get_box(font_t *font, char *text, sysarg_t *width, sysarg_t *height)
+errno_t font_get_box(font_t *font, char *text, sysarg_t *width, sysarg_t *height)
 {
 	font_metrics_t fm;
-	int rc = font_get_metrics(font, &fm);
+	errno_t rc = font_get_metrics(font, &fm);
 	if (rc != EOK)
 		return rc;
@@ -101,5 +101,5 @@
 		rc = font_resolve_glyph(font, c, &glyph_id);
 		if (rc != EOK) {
-			int rc2 = font_resolve_glyph(font, U_SPECIAL, &glyph_id);
+			errno_t rc2 = font_resolve_glyph(font, U_SPECIAL, &glyph_id);
 			if (rc2 != EOK) {
 				return rc;
@@ -121,5 +121,5 @@
 
 /* TODO this is bad interface */
-int font_draw_text(font_t *font, drawctx_t *context, source_t *source,
+errno_t font_draw_text(font_t *font, drawctx_t *context, source_t *source,
     const char *text, sysarg_t sx, sysarg_t sy)
 {
@@ -128,5 +128,5 @@
 
 	font_metrics_t fm;
-	int rc = font_get_metrics(font, &fm);
+	errno_t rc = font_get_metrics(font, &fm);
 	if (rc != EOK)
 		return rc;
@@ -144,5 +144,5 @@
 		rc = font_resolve_glyph(font, c, &glyph_id);
 		if (rc != EOK) {
-			int rc2 = font_resolve_glyph(font, U_SPECIAL, &glyph_id);
+			errno_t rc2 = font_resolve_glyph(font, U_SPECIAL, &glyph_id);
 			if (rc2 != EOK) {
 				return rc;
Index: uspace/lib/draw/font.h
===================================================================
--- uspace/lib/draw/font.h	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font.h	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -91,8 +91,8 @@
 
 typedef struct {
-	int (*get_font_metrics)(void *, font_metrics_t *);
-	int (*resolve_glyph)(void *, wchar_t, glyph_id_t *);
-	int (*get_glyph_metrics)(void *, glyph_id_t, glyph_metrics_t *);
-	int (*render_glyph)(void *, drawctx_t *, source_t *, sysarg_t,
+	errno_t (*get_font_metrics)(void *, font_metrics_t *);
+	errno_t (*resolve_glyph)(void *, wchar_t, glyph_id_t *);
+	errno_t (*get_glyph_metrics)(void *, glyph_id_t, glyph_metrics_t *);
+	errno_t (*render_glyph)(void *, drawctx_t *, source_t *, sysarg_t,
 	    sysarg_t, glyph_id_t);
 	void (*release)(void *);
@@ -105,13 +105,13 @@
 
 extern font_t *font_create(font_backend_t *, void *);
-extern int font_get_metrics(font_t *, font_metrics_t *);
-extern int font_resolve_glyph(font_t *, wchar_t, glyph_id_t *);
-extern int font_get_glyph_metrics(font_t *, glyph_id_t, glyph_metrics_t *);
-extern int font_render_glyph(font_t *, drawctx_t *, source_t *,
+extern errno_t font_get_metrics(font_t *, font_metrics_t *);
+extern errno_t font_resolve_glyph(font_t *, wchar_t, glyph_id_t *);
+extern errno_t font_get_glyph_metrics(font_t *, glyph_id_t, glyph_metrics_t *);
+extern errno_t font_render_glyph(font_t *, drawctx_t *, source_t *,
     sysarg_t, sysarg_t, glyph_id_t);
 extern void font_release(font_t *);
 
-extern int font_get_box(font_t *, char *, sysarg_t *, sysarg_t *);
-extern int font_draw_text(font_t *, drawctx_t *, source_t *, const char *,
+extern errno_t font_get_box(font_t *, char *, sysarg_t *, sysarg_t *);
+extern errno_t font_draw_text(font_t *, drawctx_t *, source_t *, const char *,
     sysarg_t, sysarg_t);
 
Index: uspace/lib/draw/font/bitmap_backend.c
===================================================================
--- uspace/lib/draw/font/bitmap_backend.c	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/bitmap_backend.c	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -59,5 +59,5 @@
 } bitmap_backend_data_t;
 
-static int bb_get_font_metrics(void *backend_data, font_metrics_t *font_metrics)
+static errno_t bb_get_font_metrics(void *backend_data, font_metrics_t *font_metrics)
 {
 	bitmap_backend_data_t *data = (bitmap_backend_data_t *) backend_data;
@@ -68,5 +68,5 @@
 }
 
-static int bb_resolve_glyph(void *backend_data, wchar_t c, glyph_id_t *glyph_id)
+static errno_t bb_resolve_glyph(void *backend_data, wchar_t c, glyph_id_t *glyph_id)
 {
 	bitmap_backend_data_t *data = (bitmap_backend_data_t *) backend_data;
@@ -74,5 +74,5 @@
 }
 
-static int bb_get_glyph_metrics(void *backend_data, glyph_id_t glyph_id,
+static errno_t bb_get_glyph_metrics(void *backend_data, glyph_id_t glyph_id,
     glyph_metrics_t *glyph_metrics)
 {
@@ -89,5 +89,5 @@
 	glyph_metrics_t gm;
 	
-	int rc = data->decoder->load_glyph_metrics(data->decoder_data, glyph_id,
+	errno_t rc = data->decoder->load_glyph_metrics(data->decoder_data, glyph_id,
 	    &gm);
 	if (rc != EOK)
@@ -115,5 +115,5 @@
 }
 
-static int get_glyph_surface(bitmap_backend_data_t *data, glyph_id_t glyph_id,
+static errno_t get_glyph_surface(bitmap_backend_data_t *data, glyph_id_t glyph_id,
     surface_t **result)
 {
@@ -127,5 +127,5 @@
 	
 	surface_t *raw_surface;
-	int rc = data->decoder->load_glyph_surface(data->decoder_data, glyph_id,
+	errno_t rc = data->decoder->load_glyph_surface(data->decoder_data, glyph_id,
 	    &raw_surface);
 	if (rc != EOK)
@@ -173,5 +173,5 @@
 }
 
-static int bb_render_glyph(void *backend_data, drawctx_t *context,
+static errno_t bb_render_glyph(void *backend_data, drawctx_t *context,
     source_t *source, sysarg_t ox, sysarg_t oy, glyph_id_t glyph_id)
 {
@@ -179,5 +179,5 @@
 	
 	glyph_metrics_t glyph_metrics;
-	int rc = bb_get_glyph_metrics(backend_data, glyph_id, &glyph_metrics);
+	errno_t rc = bb_get_glyph_metrics(backend_data, glyph_id, &glyph_metrics);
 	if (rc != EOK)
 		return rc;
@@ -224,5 +224,5 @@
 };
 
-int bitmap_font_create(bitmap_font_decoder_t *decoder, void *decoder_data,
+errno_t bitmap_font_create(bitmap_font_decoder_t *decoder, void *decoder_data,
     uint32_t glyph_count, font_metrics_t font_metrics, uint16_t points,
     font_t **out_font)
Index: uspace/lib/draw/font/bitmap_backend.h
===================================================================
--- uspace/lib/draw/font/bitmap_backend.h	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/bitmap_backend.h	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -45,11 +45,11 @@
 
 typedef struct {
-	int (*resolve_glyph)(void *, const wchar_t, glyph_id_t *);
-	int (*load_glyph_surface)(void *, glyph_id_t, surface_t **);
-	int (*load_glyph_metrics)(void *, glyph_id_t, glyph_metrics_t *);
+	errno_t (*resolve_glyph)(void *, const wchar_t, glyph_id_t *);
+	errno_t (*load_glyph_surface)(void *, glyph_id_t, surface_t **);
+	errno_t (*load_glyph_metrics)(void *, glyph_id_t, glyph_metrics_t *);
 	void (*release)(void *);
 } bitmap_font_decoder_t;
 
-extern int bitmap_font_create(bitmap_font_decoder_t *, void *, uint32_t,
+extern errno_t bitmap_font_create(bitmap_font_decoder_t *, void *, uint32_t,
     font_metrics_t, uint16_t, font_t **);
 
Index: uspace/lib/draw/font/embedded.c
===================================================================
--- uspace/lib/draw/font/embedded.c	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/embedded.c	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -44,5 +44,5 @@
 #include "bitmap_backend.h"
 
-static int fde_resolve_glyph(void *unused, const wchar_t chr,
+static errno_t fde_resolve_glyph(void *unused, const wchar_t chr,
     glyph_id_t *glyph_id)
 {
@@ -56,5 +56,5 @@
 }
 
-static int fde_load_glyph_surface(void *unused, glyph_id_t glyph_id,
+static errno_t fde_load_glyph_surface(void *unused, glyph_id_t glyph_id,
     surface_t **out_surface)
 {
@@ -75,5 +75,5 @@
 }
 
-static int fde_load_glyph_metrics(void *unused, glyph_id_t glyph_id,
+static errno_t fde_load_glyph_metrics(void *unused, glyph_id_t glyph_id,
     glyph_metrics_t *gm)
 {
@@ -106,5 +106,5 @@
 };
 
-int embedded_font_create(font_t **font, uint16_t points)
+errno_t embedded_font_create(font_t **font, uint16_t points)
 {
 	return bitmap_font_create(&fd_embedded, NULL, FONT_GLYPHS, font_metrics,
Index: uspace/lib/draw/font/embedded.h
===================================================================
--- uspace/lib/draw/font/embedded.h	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/embedded.h	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -39,5 +39,5 @@
 #include "../font.h"
 
-extern int embedded_font_create(font_t **, uint16_t points);
+extern errno_t embedded_font_create(font_t **, uint16_t points);
 
 #endif
Index: uspace/lib/draw/font/pcf.c
===================================================================
--- uspace/lib/draw/font/pcf.c	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/pcf.c	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -146,5 +146,5 @@
 }
 
-static int pcf_resolve_glyph(void *opaque_data, const wchar_t chr,
+static errno_t pcf_resolve_glyph(void *opaque_data, const wchar_t chr,
     glyph_id_t *glyph_id)
 {
@@ -183,5 +183,5 @@
 }
 
-static int load_glyph_metrics(pcf_data_t *data, uint32_t glyph_id,
+static errno_t load_glyph_metrics(pcf_data_t *data, uint32_t glyph_id,
     pcf_toc_entry_t *table, pcf_default_metrics_t *metrics)
 {
@@ -253,5 +253,5 @@
 }
 
-static int pcf_load_glyph_surface(void *opaque_data, glyph_id_t glyph_id,
+static errno_t pcf_load_glyph_surface(void *opaque_data, glyph_id_t glyph_id,
     surface_t **out_surface)
 {
@@ -260,5 +260,5 @@
 	pcf_default_metrics_t pcf_metrics;
 	memset(&pcf_metrics, 0, sizeof(pcf_default_metrics_t));
-	int rc = load_glyph_metrics(data, glyph_id, &data->metrics_table,
+	errno_t rc = load_glyph_metrics(data, glyph_id, &data->metrics_table,
 	    &pcf_metrics);
 	if (rc != EOK)
@@ -339,5 +339,5 @@
 }
 
-static int pcf_load_glyph_metrics(void *opaque_data, glyph_id_t glyph_id,
+static errno_t pcf_load_glyph_metrics(void *opaque_data, glyph_id_t glyph_id,
     glyph_metrics_t *gm)
 {
@@ -346,5 +346,5 @@
 	pcf_default_metrics_t pcf_metrics;
 	memset(&pcf_metrics, 0, sizeof(pcf_default_metrics_t));
-	int rc = load_glyph_metrics(data, glyph_id, &data->metrics_table,
+	errno_t rc = load_glyph_metrics(data, glyph_id, &data->metrics_table,
 	    &pcf_metrics);
 	if (rc != EOK)
@@ -377,5 +377,5 @@
 };
 
-static int pcf_read_toc(pcf_data_t *data)
+static errno_t pcf_read_toc(pcf_data_t *data)
 {
 	int rc = fseek(data->file, 0, SEEK_END);
@@ -460,5 +460,5 @@
 }
 
-static int pcf_seek_table_header(pcf_data_t *data, pcf_toc_entry_t *table)
+static errno_t pcf_seek_table_header(pcf_data_t *data, pcf_toc_entry_t *table)
 {
 	uint32_t format;
@@ -478,7 +478,7 @@
 }
 
-static int pcf_read_bitmap_table_header(pcf_data_t *data)
-{
-	int rc = pcf_seek_table_header(data, &data->bitmap_table);
+static errno_t pcf_read_bitmap_table_header(pcf_data_t *data)
+{
+	errno_t rc = pcf_seek_table_header(data, &data->bitmap_table);
 	if (rc != EOK)
 		return rc;
@@ -498,7 +498,7 @@
 }
 
-static int pcf_read_metrics_table_header(pcf_data_t *data)
-{
-	int rc = pcf_seek_table_header(data, &data->metrics_table);
+static errno_t pcf_read_metrics_table_header(pcf_data_t *data)
+{
+	errno_t rc = pcf_seek_table_header(data, &data->metrics_table);
 	if (rc != EOK)
 		return rc;
@@ -531,7 +531,7 @@
 }
 
-static int pcf_read_encodings_table_header(pcf_data_t *data)
-{
-	int rc = pcf_seek_table_header(data, &data->encodings_table);
+static errno_t pcf_read_encodings_table_header(pcf_data_t *data)
+{
+	errno_t rc = pcf_seek_table_header(data, &data->encodings_table);
 	if (rc != EOK)
 		return rc;
@@ -558,7 +558,7 @@
 }
 
-static int pcf_read_accelerators_table(pcf_data_t *data)
-{
-	int rc = pcf_seek_table_header(data, &data->accelerators_table);
+static errno_t pcf_read_accelerators_table(pcf_data_t *data)
+{
+	errno_t rc = pcf_seek_table_header(data, &data->accelerators_table);
 	if (rc != EOK)
 		return rc;
@@ -579,7 +579,7 @@
 }
 
-int pcf_font_create(font_t **font, char *filename, uint16_t points)
-{
-	int rc;
+errno_t pcf_font_create(font_t **font, char *filename, uint16_t points)
+{
+	errno_t rc;
 	pcf_data_t *data = malloc(sizeof(pcf_data_t));
 	if (data == NULL)
Index: uspace/lib/draw/font/pcf.h
===================================================================
--- uspace/lib/draw/font/pcf.h	(revision d5c1051faf4391647834d99babdd4a44ee5d9700)
+++ uspace/lib/draw/font/pcf.h	(revision 18bb1983592d82d44c5be98e815382d3a694e726)
@@ -39,5 +39,5 @@
 #include "../font.h"
 
-extern int pcf_font_create(font_t **, char *path, uint16_t points);
+extern errno_t pcf_font_create(font_t **, char *path, uint16_t points);
 
 #endif
