nicht ueber das String-Ende hinaus indizieren

Change-Id: Icb3b81b776939e10399da4fda049287b6a2b31f8
diff --git a/obj/tools/btool.c b/obj/tools/btool.c
index 5f554d5..4ab7416 100644
--- a/obj/tools/btool.c
+++ b/obj/tools/btool.c
@@ -141,15 +141,17 @@
 		this_interactive()->ReceiveMsg("Keine Daten vorhanden.\n");
 		return;
 	}
+
   string ret="";
+  int cols = (PL->QueryProp(P_TTY_COLS) || 77);
   foreach(int i : sort_array(m_indices(tmp),#'>))
   {
     string str=sprintf(
-      " %4d:  %s {%s} (%s)", i,
-      tmp[i,B_SUBJECT], tmp[i,B_UID], strftime("%d.%m.%y", tmp[i,B_TIME]));
+      " %4d:  %s {%s} (%s)",
+      i, tmp[i,B_SUBJECT], tmp[i,B_UID], strftime("%d.%m.%y", tmp[i,B_TIME]));
     if(cutoff)
     {
-      ret+=BS(str[0..77]);
+      ret+=BS(str[0..min(sizeof(str)-1, cols)]);
     }
     else
     {