Преглед на файлове

Fix bugs related to python3.4

oz123 преди 10 години
родител
ревизия
8a6f059e11
променени са 2 файла, в които са добавени 9 реда и са изтрити 9 реда
  1. 8 2
      pwman/data/drivers/sqlite.py
  2. 1 7
      pwman/data/nodes.py

+ 8 - 2
pwman/data/drivers/sqlite.py

@@ -24,6 +24,7 @@
 from pwman.data.database import Database, DatabaseException
 from pwman.data.database import __DB_FORMAT__
 from pwman.data.nodes import NewNode
+from pwman.data.tags import TagNew
 from pwman.util.crypto_engine import CryptoEngine
 import sqlite3 as sqlite
 import itertools
@@ -226,8 +227,10 @@ class SQLiteDatabaseNewForm(Database):
 
         if isinstance(tag, str):
             self._cur.execute(sql, [tag])
-        else:
+        elif isinstance(tag, TagNew):
             self._cur.execute(sql, [tag._name])
+        else:
+            self._cur.execute(sql, [tag.decode()])
 
     def _deletenodetags(self, node):
         try:
@@ -248,14 +251,17 @@ class SQLiteDatabaseNewForm(Database):
     def _tagids(self, tags):
         ids = []
         sql = "SELECT ID FROM TAGS WHERE DATA LIKE ?"
+
         for tag in tags:
             try:
                 if isinstance(tag, str):
                     enc = CryptoEngine.get()
                     tag = enc.encrypt(tag)
                     self._cur.execute(sql, [tag])
-                else:
+                elif isinstance(tag, TagNew):
                     self._cur.execute(sql, [tag._name.decode()+u'%'])
+                else:
+                    self._cur.execute(sql, [tag.decode()+u'%'])
 
                 values = self._cur.fetchall()
                 if values:  # tags already exist in the database

+ 1 - 7
pwman/data/nodes.py

@@ -61,14 +61,8 @@ class NewNode(object):
         for tag in self._tags:
             if isinstance(tag, str):
                 tagsloc += u"tag:"+tag.strip()+u"**endtag**"
-            if isinstance(tag, bytes):
-                try:
-                    tagsloc += u"tag:"+tag.decode()+u"**endtag**"
-                except:
-                    tagsloc += u"tag:"+tag+u"**endtag**"
-
             else:
-                tagsloc += u'tag:'+tag._name+u'**endtag**'
+                tagsloc += u'tag:'+tag._name.decode()+u'**endtag**'
 
         dump += tagsloc
         dump = [dump]