I don't think this counts as a bug, since it's by design that the Platform behavior stops you (sets vector X to 0) when it detects it has run in to a wall. Because you multiply vector X by -1, when it gets stopped and set to 0 it never gets going again.
Just use two events:
Has wall to left - set vector X to 256
Has wall to right - set vector X to -256
This seems to work fine. Closing as won't fix.