Changeset - 268fa0b6b2ef
[Not reviewed]
beta
0 2 0
Marcin Kuzminski - 15 years ago 2011-04-02 21:19:16
marcin@python-works.com
Added os.sep in models for better win support
fixed safe unicode function to not use str as param, and skip execution on unicode
2 files changed with 10 insertions and 5 deletions:
0 comments (0 inline, 0 general)
rhodecode/lib/__init__.py
Show inline comments
 
@@ -45,23 +45,26 @@ def generate_api_key(username, salt=None
 

	
 
    if salt is None:
 
        salt = _RandomNameSequence().next()
 

	
 
    return hashlib.sha1(username + salt).hexdigest()
 

	
 
def safe_unicode(str):
 
def safe_unicode(_str):
 
    """
 
    safe unicode function. In case of UnicodeDecode error we try to return
 
    unicode with errors replace, if this fails we return unicode with 
 
    string_escape decoding 
 
    """
 

	
 
    if isinstance(_str, unicode):
 
        return _str
 

	
 
    try:
 
        u_str = unicode(str)
 
        u_str = unicode(_str)
 
    except UnicodeDecodeError:
 
        try:
 
            u_str = unicode(str, 'utf-8', 'replace')
 
            u_str = _str.decode('utf-8', 'replace')
 
        except UnicodeDecodeError:
 
            #incase we have a decode error just represent as byte string
 
            u_str = unicode(str(str).encode('string_escape'))
 
            u_str = unicode(_str.encode('string_escape'))
 

	
 
    return u_str
rhodecode/model/db.py
Show inline comments
 
@@ -21,12 +21,14 @@
 
# GNU General Public License for more details.
 
# 
 
# You should have received a copy of the GNU General Public License
 
# along with this program; if not, write to the Free Software
 
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 
# MA  02110-1301, USA.
 

	
 
import os
 
import logging
 
import datetime
 
from datetime import date
 

	
 
from sqlalchemy import *
 
from sqlalchemy.exc import DatabaseError
 
@@ -209,13 +211,13 @@ class Repository(Base):
 
    @classmethod
 
    def by_repo_name(cls, repo_name):
 
        return Session.query(cls).filter(cls.repo_name == repo_name).one()
 

	
 
    @property
 
    def just_name(self):
 
        return self.repo_name.split('/')[-1]
 
        return self.repo_name.split(os.sep)[-1]
 

	
 
    @property
 
    def groups_with_parents(self):
 
        groups = []
 
        if self.group is None:
 
            return groups
0 comments (0 inline, 0 general)