Index: pango1.0-1.24.3/modules/thai/thai-fc.c
===================================================================
--- pango1.0-1.24.3.orig/modules/thai/thai-fc.c	2009-06-21 17:37:22.000000000 +0700
+++ pango1.0-1.24.3/modules/thai/thai-fc.c	2009-06-21 17:38:02.000000000 +0700
@@ -171,6 +171,8 @@
 
   if (G_UNLIKELY (!font_info))
     {
+      PangoFontMap *fontmap;
+
       /* No cached information not found, so we need to compute it
        * from scratch
        */
@@ -187,6 +189,26 @@
       else
 	font_info->font_set = THAI_FONT_TIS;
 
+      /* check if the font is monospace */
+      font_info->is_monospace = FALSE;
+      fontmap = pango_font_get_font_map (font);
+      if (fontmap)
+        {
+          PangoFontFamily **families;
+          int n_families, i;
+
+          pango_font_map_list_families (fontmap, &families, &n_families);
+          for (i = 0; i < n_families; i++)
+            {
+              if (pango_font_family_is_monospace (families[i]))
+                {
+                  font_info->is_monospace = TRUE;
+                  break;
+                }
+            }
+          g_free (families);
+        }
+
       g_object_set_qdata_full (G_OBJECT (font), info_id, font_info, (GDestroyNotify)g_free);
     }
 
Index: pango1.0-1.24.3/modules/thai/thai-shaper.c
===================================================================
--- pango1.0-1.24.3.orig/modules/thai/thai-shaper.c	2009-06-21 17:37:26.000000000 +0700
+++ pango1.0-1.24.3/modules/thai/thai-shaper.c	2009-06-21 17:38:02.000000000 +0700
@@ -164,7 +164,8 @@
     {
       case 1:
 	if (is_char_type (cluster[0],
-			  BelowVowel|BelowDiac|AboveVowel|AboveDiac|Tone|SaraAm))
+			  BelowVowel|BelowDiac|AboveVowel|AboveDiac|Tone)
+	    || (is_char_type (cluster[0], SaraAm) && !font_info->is_monospace))
 	  {
 	    gint n;
 	    glyph_lists[0] = get_null_base_glyph (font_info);
Index: pango1.0-1.24.3/modules/thai/thai-shaper.h
===================================================================
--- pango1.0-1.24.3.orig/modules/thai/thai-shaper.h	2009-06-21 17:37:35.000000000 +0700
+++ pango1.0-1.24.3/modules/thai/thai-shaper.h	2009-06-21 17:38:02.000000000 +0700
@@ -50,6 +50,7 @@
 {
   PangoFont       *font;
   ThaiFontSet      font_set;
+  gboolean         is_monospace;
 };
 
 /*
