alecpl
2011-11-28 6e0fdedfce0c72eb642d89b9446fe304d9c66dcc
- Use strpos() instead of strstr() when possible (#1488211)


3 files modified
27 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/include/rcube_browser.php 24 ●●●● patch | view | raw | blame | history
program/include/rcube_smtp.php 2 ●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
- Use strpos() instead of strstr() when possible (#1488211)
- Fix handling HTML entities when converting HTML to text (#1488212)
- Fix fit_string_to_size() renders browser and ui unresponsive (#1488207)
- Fix handling of invalid characters in request (#1488124)
program/include/rcube_browser.php
@@ -33,19 +33,19 @@
        $HTTP_USER_AGENT = strtolower($_SERVER['HTTP_USER_AGENT']);
        $this->ver = 0;
        $this->win = strstr($HTTP_USER_AGENT, 'win');
        $this->mac = strstr($HTTP_USER_AGENT, 'mac');
        $this->linux = strstr($HTTP_USER_AGENT, 'linux');
        $this->unix  = strstr($HTTP_USER_AGENT, 'unix');
        $this->win = strpos($HTTP_USER_AGENT, 'win') != false;
        $this->mac = strpos($HTTP_USER_AGENT, 'mac') != false;
        $this->linux = strpos($HTTP_USER_AGENT, 'linux') != false;
        $this->unix  = strpos($HTTP_USER_AGENT, 'unix') != false;
        $this->opera = strstr($HTTP_USER_AGENT, 'opera');
        $this->ns4 = strstr($HTTP_USER_AGENT, 'mozilla/4') && !stristr($HTTP_USER_AGENT, 'msie');
        $this->ns  = ($this->ns4 || strstr($HTTP_USER_AGENT, 'netscape'));
        $this->ie  = !$this->opera && stristr($HTTP_USER_AGENT, 'compatible; msie');
        $this->mz  = !$this->ie && strstr($HTTP_USER_AGENT, 'mozilla/5');
        $this->chrome = strstr($HTTP_USER_AGENT, 'chrome');
        $this->khtml = strstr($HTTP_USER_AGENT, 'khtml');
        $this->safari = !$this->chrome && ($this->khtml || strstr($HTTP_USER_AGENT, 'safari'));
        $this->opera = strpos($HTTP_USER_AGENT, 'opera') !== false;
        $this->ns4 = strpos($HTTP_USER_AGENT, 'mozilla/4') !== false && strpos($HTTP_USER_AGENT, 'msie') === false;
        $this->ns  = ($this->ns4 || strpos($HTTP_USER_AGENT, 'netscape') !== false);
        $this->ie  = !$this->opera && strpos($HTTP_USER_AGENT, 'compatible; msie') !== false;
        $this->mz  = !$this->ie && strpos($HTTP_USER_AGENT, 'mozilla/5') !== false;
        $this->chrome = strpos($HTTP_USER_AGENT, 'chrome') !== false;
        $this->khtml = strpos($HTTP_USER_AGENT, 'khtml') !== false;
        $this->safari = !$this->chrome && ($this->khtml || strpos($HTTP_USER_AGENT, 'safari') !== false);
        if ($this->ns || $this->chrome) {
            $test = preg_match('/(mozilla|chrome)\/([0-9.]+)/', $HTTP_USER_AGENT, $regs);
program/include/rcube_smtp.php
@@ -390,7 +390,7 @@
          $from = $addresses[0];
        // Reject envelope From: addresses with spaces.
        if (strstr($from, ' '))
        if (strpos($from, ' ') !== false)
          return false;
        $lines[] = $key . ': ' . $value;