Skip to content
  • Thomas Haller's avatar
    libnm: make _nm_register_setting() thread safe · ecd53944
    Thomas Haller authored
    _nm_register_setting() and _nm_register_setting_impl() are called from within
    the GType constructor for the NMSetting subtype. As such, at that point it
    runs inside a g_once_init_enter() block. However, each implementation
    for initializing the GType has a separate g_once_init_enter() variable, hence,
    if two threads create GType instances for different NMSetting subclasses, there
    is a race.
    
    libnm is not thread safe. However, it should be at least thread safe
    with respect to constructing the GType instances.
    ecd53944