Fix a linkage error with mac clang

Prevent symbol cache variables from being instantiated multipe times.
pull/1296/head
Yuki Yugui Sonoda 10 years ago
parent 3c88e5d6e1
commit 99eb9f94bf
  1. 5
      src/ruby/ext/grpc/rb_grpc.c
  2. 6
      src/ruby/ext/grpc/rb_grpc.h

@ -257,6 +257,11 @@ VALUE grpc_rb_sStatus = Qnil;
VALUE grpc_rb_mGRPC = Qnil;
VALUE grpc_rb_mGrpcCore = Qnil;
/* cached Symbols for members in Status struct */
VALUE sym_code = Qundef;
VALUE sym_details = Qundef;
VALUE sym_metadata = Qundef;
void Init_grpc() {
grpc_init();
ruby_vm_at_exit(grpc_rb_shutdown);

@ -48,13 +48,13 @@ extern VALUE grpc_rb_sNewServerRpc;
extern VALUE grpc_rb_sStatus;
/* sym_code is the symbol for the code attribute of grpc_rb_sStatus. */
VALUE sym_code;
extern VALUE sym_code;
/* sym_details is the symbol for the details attribute of grpc_rb_sStatus. */
VALUE sym_details;
extern VALUE sym_details;
/* sym_metadata is the symbol for the metadata attribute of grpc_rb_sStatus. */
VALUE sym_metadata;
extern VALUE sym_metadata;
/* GC_NOT_MARKED is used in calls to Data_Wrap_Struct to indicate that the
wrapped struct does not need to participate in ruby gc. */

Loading…
Cancel
Save