map: backport fixes from trunk