<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">--- src/lib/libast/sfio/sfvprintf.c.orig	2016-09-14 15:24:35.000000000 -0700
+++ src/lib/libast/sfio/sfvprintf.c	2016-09-13 17:35:16.000000000 -0700
@@ -714,9 +714,11 @@ loop_fmt :
 #ifdef mbwidth
 						if(wc)
 						{	n_w = mbwidth(*wsp);
+							if (n_w &gt; 0) {
 							if(precis &gt;= 0 &amp;&amp; (w+n_w) &gt; precis )
 								break;
 							w += n_w;
+							}
 						}
 						else
 #endif
@@ -740,10 +742,14 @@ loop_fmt :
 							break;
 						osp = ssp;
 						n = mbchar(osp);
+						if (!n) 
+							break;
 						n_w = mbwidth(n);
+						if (n_w &gt; 0) {
 						if(precis &gt;= 0 &amp;&amp; (w+n_w) &gt; precis )
 							break;
 						w += n_w;
+						}
 						ssp = osp;
 					}
 					v = ssp - sp;
</pre></body></html>