I am guessing that this is due to a problem in display/drawing-item.cpp where the "intermediate" DrawingSurface is created without accounting for any scaling. Contrast this line in sp-pattern.cpp
The second (optional) argument gives a scaling to the surface (that then must be accounted for later). If there is no scaling, the bitmap representing the pattern will be the same size as the default pattern size regardless of any zoom or pattern transformation. I don't know enough to see a quick and obvious way to fix this.
I am guessing that this is due to a problem in display/ drawing- item.cpp where the "intermediate" DrawingSurface is created without accounting for any scaling. Contrast this line in sp-pattern.cpp
Inkscape: :DrawingSurface temp(pattern_tile, c.ceil());
to this line in drawing-item.cpp
DrawingSurface intermediate( *iarea) ;
The second (optional) argument gives a scaling to the surface (that then must be accounted for later). If there is no scaling, the bitmap representing the pattern will be the same size as the default pattern size regardless of any zoom or pattern transformation. I don't know enough to see a quick and obvious way to fix this.