[ 
https://issues.apache.org/jira/browse/THRIFT-664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12896590#action_12896590
 ] 

Bryan Duxbury commented on THRIFT-664:
--------------------------------------

What does this change do?

{code}
Index: compact_protocol.c
===================================================================
--- compact_protocol.c  (revision 983480)
+++ compact_protocol.c  (working copy)
@@ -20,8 +20,8 @@
 #include <ruby.h>
 #include <stdbool.h>
 #include <stdint.h>
-#include <constants.h>
-#include <struct.h>
+#include "constants.h"
+#include "struct.h"
 #include "macros.h"
 
 #define LAST_ID(obj) FIX2INT(rb_ary_pop(rb_ivar_get(obj, last_field_id)))
@@ -458,7 +458,7 @@
     
     if (modifier == 0) {
       // not a delta. look ahead for the zigzag varint field id.
-      LAST_ID(self);
+      (void) LAST_ID(self);
       field_id = read_i16(self);
     } else {
       // has a delta. add the delta to the last read field id.
{code}

> Ruby extension fails to build with Ruby 1.9.1
> ---------------------------------------------
>
>                 Key: THRIFT-664
>                 URL: https://issues.apache.org/jira/browse/THRIFT-664
>             Project: Thrift
>          Issue Type: Bug
>          Components: Library (Ruby)
>    Affects Versions: 0.2
>         Environment: OS: archlinux
> Ruby: ruby 1.9.1p376 (2009-12-07 revision 26041) [x86_64-linux]
>            Reporter: Byron Clark
>             Fix For: 0.4
>
>         Attachments: ruby19-build-fix.patch
>
>
> The have_func('strlcpy', 'string.h') call in lib/rb/ext/extconf.rb is broken 
> in Ruby 1.9.1.  The check always succeeds because Ruby now includes strlcpy 
> in /usr/include/ruby-1.9.1/ruby/missing.h as long as HAVE_STRLCPY is 
> undefined and the Ruby headers are always included by have_func.  The call in 
> extconf.rb finds the function and sets the HAVE_STRLCPY macro for the 
> Makefile.  /lib/rb/ext/struct.c then fails to build because neither the 
> included strlcpy or the strlcpy provided by Ruby are used when HAVE_STRLCPY 
> is set.
> Removing the have_func line from lib/rb/ext/extconf.rb and the definition of 
> strlcpy in lib/rb/ext/struct.c fixes the build.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to