the function UIScrollPanel.RestrictWithinBounds() uses mPanel before its initialized, normally mPanel is inited in awake but in some circumstances RestrictWithinBounds is called before that. Can you add if (mPanel == null) mPanel = GetComponent<UIPanel>(); before mpanel is used in that method?
Thanks