Changes to internal private data of an ID has _nothing_ to do into its 'lib_link' reading code (unless in the extremely rare case where it would have hard dependency on its ID having valid ID pointers). In that case, `BKE_paint_runtime_init` was already called in `BKE_paint_blend_read_data` anyway, so the only actual change was setting `p->paint_cursor`... *sigh*