diff --git a/lib/master.pike b/lib/master.pike
index 7acb51a7cb9f09378a0f0b1050b0d6425bfbe2cf..6779bcfd48ef53cd867926172be41163459a6b1e 100644
--- a/lib/master.pike
+++ b/lib/master.pike
@@ -584,14 +584,16 @@ string describe_backtrace(mixed *trace)
 	if(sizeof(tmp)>=3 && functionp(tmp[2]))
 	{
 	  row=function_name(tmp[2])+"(";
-	}
-	for(int e=3;e<sizeof(tmp);e++)
-	{
-	  row+=stupid_describe(tmp[e])+",";
+	  for(int e=3;e<sizeof(tmp);e++)
+	  {
+	    row+=stupid_describe(tmp[e])+",";
+	  }
+
+	  if(sizeof(tmp)>3)
+	    row=row[..sizeof(row)-2];
+	  row+=") in ";
 	}
 
-	row=row[..sizeof(row)-2]+") in ";
-
 	if(sizeof(tmp)>=2 && stringp(tmp[0]) && intp(tmp[1]))
 	{
 	  row+="line "+tmp[1]+" in "+trim_file_name(tmp[0]);
@@ -609,4 +611,3 @@ string describe_backtrace(mixed *trace)
 
   return ret;
 }
-