| --- protobuf-cleaned/src/google/protobuf/stubs/once.cc 2015-12-30 13:21:46.000000000 -0800 |
| +++ protobuf-patched/src/google/protobuf/stubs/once.cc 2016-03-31 13:25:32.180017848 -0700 |
| +void GoogleOnceInit(ProtobufOnceType* once, void (*init_func)()) { |
| + if (internal::Acquire_Load(once) != ONCE_STATE_DONE) { |
| + internal::FunctionClosure0 func(init_func, false); |
| + GoogleOnceInitImpl(once, &func); |
| void GoogleOnceInitImpl(ProtobufOnceType* once, Closure* closure) { |
| internal::AtomicWord state = internal::Acquire_Load(once); |
| // Fast path. The provided closure was already executed. |
| --- protobuf-cleaned/src/google/protobuf/stubs/once.h 2015-12-30 13:21:46.000000000 -0800 |
| +++ protobuf-patched/src/google/protobuf/stubs/once.h 2016-03-31 13:25:35.520013490 -0700 |
| void GoogleOnceInitImpl(ProtobufOnceType* once, Closure* closure); |
| -inline void GoogleOnceInit(ProtobufOnceType* once, void (*init_func)()) { |
| - if (internal::Acquire_Load(once) != ONCE_STATE_DONE) { |
| - internal::FunctionClosure0 func(init_func, false); |
| - GoogleOnceInitImpl(once, &func); |
| +void GoogleOnceInit(ProtobufOnceType* once, void (*init_func)()); |
| inline void GoogleOnceInit(ProtobufOnceType* once, void (*init_func)(Arg*), |