--- /dev/null
+--- rpm-5.4.9/lib/psm.c.slash~ 2012-05-15 03:47:32.000000000 +0200
++++ rpm-5.4.9/lib/psm.c 2012-05-15 03:49:04.075347677 +0200
+@@ -1463,11 +1463,15 @@ static rpmRC runTriggersLoop(rpmpsm psm,
+ ARGint_t vals;
+
+ depName = _free(depName);
+- depName = (char *) xmalloc(nName + 1 + 1);
+- (void) stpcpy(depName, Name);
+- /* XXX re-add the pesky trailing '/' to dirnames. */
+- depName[nName] = (tagno == RPMTAG_DIRNAMES ? '/' : '\0');
+- depName[nName+1] = '\0';
++ if (!strcmp(Name, "/"))
++ depName = xstrdup(Name);
++ else {
++ depName = xmalloc(nName + 1 + 1);
++ (void) stpcpy(depName, Name);
++ /* XXX re-add the pesky trailing '/' to dirnames. */
++ depName[nName] = (tagno == RPMTAG_DIRNAMES ? '/' : '\0');
++ depName[nName+1] = '\0';
++ }
+
+ if (depName[0] == '/' && psm->Tmires != NULL) {
+ miRE mire;