Over-current-protecting a single-ended solid-state switch
That's not an impossibly bad circuit, but it has a few problems.

1) Most obviously, the LM339 needs a pullup resistor on its output.

2) A ULN2003 has a turn-on delay of as much as 1 usec. During this time the comparator will be seeing a high input and will be generating a fault indicator. If the delay capacitor is not large enough, this will prevent the load from ever turning on.

3) Once a fault is detected, clearing it will not cause the circuit to allow operation. It will be necessary to set Sw in low for the recovery time of your output delay RC, and only then apply it to drive the load.

4) This is OK as a gross fault detector, but be aware that the ULN2003 output voltage Vce(sat) is not well-defined. At 350 mA, typical is 1.2, but max is 1.7, and there is no minimum defined. As long as your desired loads are much less than your nominal trip point you'll be OK, but if you want to drive anywhere near the ULN limits you'll run the risk of getting a ULN2003 with a weak output which trips under normal load.

5) Unless you use a 74HC132 for your input gate, the operation may not be clean. As the capacitor voltage changes near the trip point, the gate will not get a sharp transition, and there is the possiblity that (for instance) the loop may oscillate. This will depend on all sorts of peripheral effects, including decoupling. It may not be a problem in this case, but whenever you're doing this sort of limiting hysteresis is your friend.