[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, debian, updated. upstream/0.9.5.5-717-g0f98819
Sebastian Krzyszkowiak
seba.dos1 at gmail.com
Sat Aug 6 08:18:10 UTC 2011
The following commit has been merged in the debian branch:
commit c88a629a304432d38fe65ce8fa4f40b58658b81f
Author: Sebastian Krzyszkowiak <seba.dos1 at gmail.com>
Date: Thu Aug 27 00:19:48 2009 +0200
opimd: little optimalizantion in merging and getting field value from entry
diff --git a/framework/subsystems/opimd/docs/TODO b/framework/subsystems/opimd/docs/TODO
index baceaee..8edf524 100644
--- a/framework/subsystems/opimd/docs/TODO
+++ b/framework/subsystems/opimd/docs/TODO
@@ -1,4 +1,5 @@
Near future:
+* check if merging still works
* quering "Phone" should check also "Office phone"
In mean-time:
* Initialized signal in source
diff --git a/framework/subsystems/opimd/pimd_generic.py b/framework/subsystems/opimd/pimd_generic.py
index 98d0b8f..6af82d1 100644
--- a/framework/subsystems/opimd/pimd_generic.py
+++ b/framework/subsystems/opimd/pimd_generic.py
@@ -99,22 +99,19 @@ class GenericEntry():
# Return single result
field = self._fields[field_ids[0]]
result = field[1]
-
else:
# Return multiple results
result = []
+ prev = self._fields[field_ids[0]][1]
+ thesame = 1
for n in field_ids:
field = self._fields[n]
result.append(field[1])
-
- thesame = 1
- prev = self._fields[field_ids[0]]
- for n in field_ids:
- if prev!=self._fields[n]:
+ if prev!=field:
thesame = 0
if thesame:
- result = result[0]
+ result = prev
if result != '':
return result
@@ -269,11 +266,7 @@ class GenericEntry():
duplicated = True
for field_name in entry_fields:
- try:
- if self[field_name]!=entry_fields[field_name]:
- duplicated = False
- break
- except KeyError:
+ if self[field_name]!=entry_fields[field_name]:
duplicated = False
break
@@ -286,26 +279,20 @@ class GenericEntry():
merge = [1, 0]
for field_name in entry_fields:
- if not field_name.startswith('_'):
- if field_name!='Path':
- field_value=entry_fields[field_name]
- try:
- if self[field_name]!=field_value:
- merge[0] = 0
- break
- else:
- merge[1] = 1
- except KeyError:
- pass
+ if not field_name.startswith('_') and field_name!='Path':
+ field_value=entry_fields[field_name]
+ if self[field_name]!=field_value:
+ merge[0] = 0
+ break
+ else:
+ merge[1] = 1
if merge[0]:
if merge[1]:
self.import_fields(entry_fields, backend_name)
return True
- else:
- return False
- else:
- return False
+
+ return False
def incorporates_data_from(self, backend_name):
--
FSO frameworkd Debian packaging
More information about the pkg-fso-commits
mailing list