diff --git a/src/output/sfrt_output_error.c b/src/output/sfrt_output_error.c
index 155e009..24cb21a 100644
--- a/src/output/sfrt_output_error.c
+++ b/src/output/sfrt_output_error.c
@@ -82,8 +82,9 @@ static int sfrt_output_error_record_plain(
 {
 	const char * epath;
 	char         errbuf[256];
-	const char * errdesc = sfrt_output_strerror(erri,&errbuf);
+
 	int          fderr   = sfrt_driver_fderr(dctx);
+	const char * errdesc = sfrt_output_strerror(erri,&errbuf);
 
 	epath = erri->euctx
 		? *erri->euctx->path
@@ -118,8 +119,9 @@ static int sfrt_output_error_record_annotated(
 {
 	const char * epath;
 	char         errbuf[256];
-	const char * errdesc = sfrt_output_strerror(erri,&errbuf);
+
 	int          fderr   = sfrt_driver_fderr(dctx);
+	const char * errdesc = sfrt_output_strerror(erri,&errbuf);
 
 	epath = erri->euctx
 		? *erri->euctx->path