Index: status/web/builder.py
===================================================================
--- status/web/builder.py	(revision 37)
+++ status/web/builder.py	(revision 39)
@@ -134,7 +134,7 @@
         Custom properties can be passed from the web form.  To do
         this, subclass this class, overriding the force() method.  You
         can then determine the properties (usually from form values,
-        by inspecting req.args), then passing them to this superclass
+        by inspecting req.args), then pass them to this superclass
         force method.
         
         @param custom_props: Custom properties to set on build
Index: steps/trigger.py
===================================================================
--- steps/trigger.py	(revision 37)
+++ steps/trigger.py	(revision 39)
@@ -47,10 +47,12 @@
             self.step_status.setText(["interrupted"])
 
     def start(self):
+        custom_props = {}
         self.running = True
         ss = self.build.getSourceStamp()
         if self.updateSourceStamp:
             ss = SourceStamp(ss.branch, self.build.getProperty('got_revision'), ss.patch)
+        custom_props = self.build.getCustomProperties()
         # (is there an easier way to find the BuildMaster?)
         all_schedulers = self.build.builder.botmaster.parent.allSchedulers()
         all_schedulers = dict([(sch.name, sch) for sch in all_schedulers])
@@ -64,7 +66,7 @@
             if all_schedulers.has_key(scheduler):
                 sch = all_schedulers[scheduler]
                 if isinstance(sch, Triggerable):
-                    dl.append(sch.trigger(ss))
+                    dl.append(sch.trigger(ss, custom_props))
                     triggered_schedulers.append(scheduler)
                 else:
                     unknown_schedulers.append(scheduler)
Index: scheduler.py
===================================================================
--- scheduler.py	(revision 37)
+++ scheduler.py	(revision 39)
@@ -705,12 +705,12 @@
     def getPendingBuildTimes(self):
         return []
 
-    def trigger(self, ss):
+    def trigger(self, ss, custom_props={}):
         """
         Trigger this scheduler.  Returns a deferred that will fire when the buildset
         is finished.
         """
-        bs = buildset.BuildSet(self.builderNames, ss)
+        bs = buildset.BuildSet(self.builderNames, ss, custom_props=custom_props)
         d = bs.waitUntilFinished()
         self.submit(bs)
         return d
Index: process/base.py
===================================================================
--- process/base.py	(revision 37)
+++ process/base.py	(revision 39)
@@ -206,10 +206,12 @@
         properties can live."""
         self.build_status.setProperty(propname, value)
 
+    def getCustomProperties(self):
+        return self.custom_properties
+
     def getProperty(self, propname):
         return self.build_status.properties[propname]
 
-
     def allChanges(self):
         return self.source.changes
 

