diff --git a/poky/meta/classes-global/package_rpm.bbclass b/poky/meta/classes-global/package_rpm.bbclass
index 81a2060..85d0bd7 100644
--- a/poky/meta/classes-global/package_rpm.bbclass
+++ b/poky/meta/classes-global/package_rpm.bbclass
@@ -159,7 +159,9 @@
                             pv = subd['PV']
                             pkgv = subd['PKGV']
                             reppv = pkgv.replace('-', '+')
-                            ver = ver.replace(pv, reppv).replace(pkgv, reppv)
+                            if ver.startswith(pv):
+                                ver = ver.replace(pv, reppv)
+                            ver = ver.replace(pkgv, reppv)
                         if 'PKGR' in subd:
                             # Make sure PKGR rather than PR in ver
                             pr = '-' + subd['PR']
@@ -297,7 +299,7 @@
     srcmaintainer  = localdata.getVar('MAINTAINER')
     srchomepage    = localdata.getVar('HOMEPAGE')
     srcdescription = localdata.getVar('DESCRIPTION') or "."
-    srccustomtagschunk = get_package_additional_metadata("rpm", localdata)
+    srccustomtagschunk = oe.packagedata.get_package_additional_metadata("rpm", localdata)
 
     srcdepends     = d.getVar('DEPENDS')
     srcrdepends    = ""
@@ -339,7 +341,7 @@
 
         localdata.setVar('OVERRIDES', d.getVar("OVERRIDES", False) + ":" + pkg)
 
-        conffiles = get_conffiles(pkg, d)
+        conffiles = oe.package.get_conffiles(pkg, d)
         dirfiles = localdata.getVar('DIRFILES')
         if dirfiles is not None:
             dirfiles = dirfiles.split()
@@ -353,7 +355,7 @@
         splitlicense = (localdata.getVar('LICENSE') or "")
         splitsection = (localdata.getVar('SECTION') or "")
         splitdescription = (localdata.getVar('DESCRIPTION') or ".")
-        splitcustomtagschunk = get_package_additional_metadata("rpm", localdata)
+        splitcustomtagschunk = oe.packagedata.get_package_additional_metadata("rpm", localdata)
 
         translate_vers('RDEPENDS', localdata)
         translate_vers('RRECOMMENDS', localdata)
@@ -363,7 +365,7 @@
         translate_vers('RCONFLICTS', localdata)
 
         # Map the dependencies into their final form
-        mapping_rename_hook(localdata)
+        oe.packagedata.mapping_rename_hook(localdata)
 
         splitrdepends    = localdata.getVar('RDEPENDS') or ""
         splitrrecommends = localdata.getVar('RRECOMMENDS') or ""
