Index: branches/version-2_12-dev/data/class/SC_Initial.php
===================================================================
--- branches/version-2_12-dev/data/class/SC_Initial.php	(revision 21967)
+++ branches/version-2_12-dev/data/class/SC_Initial.php	(revision 21989)
@@ -125,5 +125,4 @@
 
         mb_language('ja'); // mb_internal_encoding() より前に
-        // TODO 他に mb_language() している箇所の削除を検討
         // TODO .htaccess の mbstring.language を削除できないか検討
 
Index: branches/version-2_12-dev/data/class/SC_SendMail.php
===================================================================
--- branches/version-2_12-dev/data/class/SC_SendMail.php	(revision 21987)
+++ branches/version-2_12-dev/data/class/SC_SendMail.php	(revision 21989)
@@ -22,10 +22,10 @@
  */
 
-//--- テキスト/HTML　メール送信
+// テキスト/HTML　メール送信
 class SC_SendMail {
 
-    var $to;            //  送信先
-    var $subject;       //  題名
-    var $body;          //  本文
+    var $to;            // 送信先
+    var $subject;       // 題名
+    var $body;          // 本文
     var $cc;            // CC
     var $bcc;           // BCC
@@ -34,5 +34,9 @@
     var $objMail;
 
-    // コンストラクタ
+    /**
+     * コンストラクタ
+     *
+     * @return void
+     */
     function __construct() {
         $this->arrRecip = array();
@@ -47,9 +51,12 @@
         $this->host = SMTP_HOST;
         $this->port = SMTP_PORT;
-        mb_language('Japanese');
-
-        //-- PEAR::Mailを使ってメール送信オブジェクト作成
+
+        // PEAR::Mailを使ってメール送信オブジェクト作成
         $this->objMail =& Mail::factory($this->backend,
                                         $this->getBackendParams($this->backend));
+        if (PEAR::isError($this->objMail)) {
+            // XXX 環境によっては文字エンコードに差異がないか些か心配
+            trigger_error($this->objMail->getMessage(), E_USER_ERROR);
+        }
     }
 
@@ -103,7 +110,5 @@
     function setSubject($subject) {
         $this->subject = mb_encode_mimeheader($subject, 'JIS', 'B', "\n");
-        $this->subject = str_replace("\x0D\x0A", "\n", $this->subject);
-        $this->subject = str_replace("\x0D", "\n", $this->subject);
-        $this->subject = str_replace("\x0A", "\n", $this->subject);
+        $this->subject = str_replace(array("\r\n", "\r"), "\n", $this->subject);
     }
 
@@ -126,5 +131,5 @@
                 'port' => $this->port
         );
-        //-- PEAR::Mailを使ってメール送信オブジェクト作成
+        // PEAR::Mailを使ってメール送信オブジェクト作成
         $this->objMail =& Mail::factory('smtp', $arrHost);
 
@@ -143,5 +148,5 @@
                 'port' => $this->port
         );
-        //-- PEAR::Mailを使ってメール送信オブジェクト作成
+        // PEAR::Mailを使ってメール送信オブジェクト作成
         $this->objMail =& Mail::factory('smtp', $arrHost);
     }
@@ -209,5 +214,5 @@
     // ヘッダーを返す
     function getBaseHeader() {
-        //-- 送信するメールの内容と送信先
+        // 送信するメールの内容と送信先
         $arrHeader = array();
         $arrHeader['MIME-Version'] = '1.0';
@@ -305,4 +310,5 @@
                 $arrParams = array();
                 break;
+
             case 'sendmail':
                 $arrParams = array(
@@ -311,6 +317,6 @@
                 );
                 break;
+
             case 'smtp':
-            default:
                 $arrParams = array(
                     'host' => $this->host,
@@ -326,4 +332,8 @@
                 }
                 break;
+
+            default:
+                trigger_error('不明なバックエンド。[$backend = ' . var_export($backend, true) . ']', E_USER_ERROR);
+                exit;
         }
         return $arrParams;
