Giter Club home page Giter Club logo

ruby-zbar's People

Contributors

joshrpowell avatar philister avatar untoldone avatar willglynn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ruby-zbar's Issues

Cannot process jpeg image

I'm using the latest zbar from mercurial on sf.net. I can process a jpeg file using 'zbarimg bigstock-Barcode-18830351.jpg', but the following does not work:

    require 'zbar'
    jpeg = File.binread('bigstock-Barcode-18830351.jpg')
    z = ZBar::Image.from_jpeg(jpeg)
    r = z.process

z is #<ZBar::Image:0x00000001c55778 @img=#<FFI::AutoPointer address=0x000000021b8710>>, r is [], and no errors are generated.

I'm using http://www.geeknewscentral.com/wp-content/uploads/2012/12/bigstock-Barcode-18830351.jpg as the test image.

Ruby 1.9 v 1.8?

Thanks for a great library. Wer're having trouble transitioning from development (Rails 3.0.4/Ruby 1.8.7 on Snow Leopard) to our production environment (Gentoo Linux 10).

Long story short, we can't get FFI to play nicely with Ruby 1.8.7 on Gentoo 10.

So, we deployed our app server running zbar with Ruby 1.9.2, which does work with FFI on Gentoo. While everything loads and appears to run fine, our production app server is not recognizing any barcodes. No errors, no warnings, just no barcodes. The same images are readily recognized in the dev environment.

Use flags for zbar look like this:

[ebuild N ~] media-gfx/zbar-0.10 USE="imagemagick jpeg threads v4l v4l2 -X -gtk -python -qt4 -xv" 0 kB [1]

please verify that the detected configuration matches your expectations:

X --with-x=disabled
pthreads --enable-pthread=yes
v4l --enable-video=yes
jpeg --with-jpeg=yes
Magick++ --with-imagemagick=yes
Python --with-python=no
GTK+ --with-gtk=no
=> the GTK+ widget will NOT be built
Qt4 --with-qt=no
=> the Qt4 widget will NOT be built

... any thoughts on possible version sensitivities between 1.8 and 1.9? Our implementation of zbar is almost too simple to troubleshoot:

def find_barcodes
@image_file_barcodes = []
@image_files.each{ |jpg| @image_file_barcodes << ZBar::Image.from_jpeg(File.read(jpg)).process}
update_status("In progress", "barcoded")
end

Thanks for any suggestions...

Decoding PNG images

Hi,

I was just trying in IRB your nice binding albeit I wasn't able to decode and process PNG images. I took a look at the source code and I cound't find any references to PNG file format. I'm a correct? Are there any workarounds, since command line 'zbarimg' can handle those?

Thanks,
Luca

ruby-zbar with EPEL zbar doesn't work correctly on CentOS7.

Hello developers.

Thank you for creating the great product.
I would like to share my knowledge on CentOS7.

Summary

ruby-zbar didn't work with libzbar built by EPEL.
I needed to build zbar by myself with the patch.

Environment

  • OS: CentOS7 (3.10.0-862.2.3.el7)
  • libzbar: 0.10-27.el7 (from EPEL)
  • zbar: 0.3.0
  • Ruby 2.4.7 (rbenv build), 2.0.0p648(CentOS7 binary)

Build steps

I succeed to build zbar with the following steps in the CentOS7 environment.

remove EPEL zbar

sudo rpm -e zbar-devel zbar-devel
sudo rpm -e zbar
wget https://astuteinternet.dl.sourceforge.net/project/zbar/zbar/0.10/zbar-0.10.tar.bz2
tar xvf ./zbar-0.10.tar.bz2
cd zbar-0.10
wget https://gist.githubusercontent.com/willglynn/5659946/raw/56e07d934acf8cf5bb5f94a793b74ecc68ebd180/zbar-jpeg-fix.patch
patch -p1 < zbar-jpeg-fix.patch
./configure --disable-video --without-gtk --without-qt
make
sudo make install

After that

gem install zbar

test code

#!/usr/bin/env ruby

require 'zbar'

Dir.glob("*.jpg") do |image_path|
  r = ZBar::Image.from_jpeg(File.binread(image_path)).process
  r.each do |d|
    next if d.symbology != 'QR-Code'
    puts d.data
  end
end

zbar(EPEL) Error

I got the following errror When I use EPEL libzbar and ZBar

ruby test.rb
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:94: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.3.7p456 (2018-03-28 revision 63024) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0011 p:---- s:0040 e:000039 CFUNC  :zbar_image_convert
c:0010 p:0019 s:0035 e:000034 METHOD /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:94
c:0009 p:0041 s:0030 e:000029 BLOCK  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:47 [FINISH]
c:0008 p:---- s:0027 e:000026 CFUNC  :tap
c:0007 p:0020 s:0024 e:000023 METHOD /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:45
c:0006 p:0025 s:0020 e:000019 METHOD /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:15
c:0005 p:0016 s:0017 e:000016 METHOD /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:20
c:0004 p:0028 s:0012 e:000011 BLOCK  test.rb:6 [FINISH]
c:0003 p:---- s:0008 e:000007 CFUNC  :glob
c:0002 p:0024 s:0004 E:0010d0 EVAL   test.rb:5 [FINISH]
c:0001 p:0000 s:0002 E:000110 (none) [FINISH]

-- Ruby level backtrace information ----------------------------------------
test.rb:5:in `<main>'
test.rb:5:in `glob'
test.rb:6:in `block in <main>'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:20:in `from_jpeg'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:15:in `available?'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:45:in `image_works?'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:45:in `tap'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:47:in `block in image_works?'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:94:in `convert'
/home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb:94:in `zbar_image_convert'

-- Machine register context ------------------------------------------------
 RIP: 0x0000000000000000 RBP: 0x0000563646446e50 RSP: 0x00007fff14d8d828
 RAX: 0x0000000000000000 RBX: 0x00005636464487b0 RCX: 0x00007fa5e72f533c
 RDX: 0x0000563646446e50 RDI: 0x00005636464487b0 RSI: 0x00007fa5e72f5324
  R8: 0x0000000000000000  R9: 0x0000000000000000 R10: 0x0000000000000000
 R11: 0x00007fa5e72d1170 R12: 0x00007fa5e72f533c R13: 0x0000000000000000
 R14: 0x0000000000000000 R15: 0x00007fff14d8da40 EFL: 0x0000000000010202

-- C level backtrace information -------------------------------------------
/home/vagrant/.rbenv/versions/2.3.7/bin/ruby(rb_vm_bugreport+0x51f) [0x563644d48e6f] vm_dump.c:724
/home/vagrant/.rbenv/versions/2.3.7/bin/ruby(rb_bug_context+0xd0) [0x563644d23030] error.c:435
/home/vagrant/.rbenv/versions/2.3.7/bin/ruby(sigsegv+0x3e) [0x563644c1c55e] signal.c:890
/lib64/libpthread.so.0 [0x7fa5eef826d0]

-- Other runtime information -----------------------------------------------

* Loaded script: test.rb

* Loaded features:

    0 enumerator.so
    1 thread.rb
    2 rational.so
    3 complex.so
    4 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
    5 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
    6 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/unicode_normalize.rb
    7 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/rbconfig.rb
    8 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/compatibility.rb
    9 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/defaults.rb
   10 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/deprecate.rb
   11 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/errors.rb
   12 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/version.rb
   13 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/requirement.rb
   14 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/platform.rb
   15 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/basic_specification.rb
   16 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/stub_specification.rb
   17 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/util/list.rb
   18 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/stringio.so
   19 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/rfc2396_parser.rb
   20 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/rfc3986_parser.rb
   21 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/common.rb
   22 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/generic.rb
   23 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/ftp.rb
   24 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/http.rb
   25 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/https.rb
   26 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/ldap.rb
   27 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/ldaps.rb
   28 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri/mailto.rb
   29 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/uri.rb
   30 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/specification.rb
   31 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/exceptions.rb
   32 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/util.rb
   33 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/bundler_version_finder.rb
   34 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/dependency.rb
   35 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_gem.rb
   36 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/monitor.rb
   37 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb
   38 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems.rb
   39 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/site_ruby/2.3.0/rubygems/path_support.rb
   40 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/version.rb
   41 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/core_ext/name_error.rb
   42 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/levenshtein.rb
   43 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/jaro_winkler.rb
   44 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkable.rb
   45 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/delegate.rb
   46 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
   47 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
   48 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
   49 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
   50 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/null_checker.rb
   51 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean/formatter.rb
   52 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/did_you_mean-1.0.0/lib/did_you_mean.rb
   53 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
   54 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/platform.rb
   55 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/types.rb
   56 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/library.rb
   57 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/errno.rb
   58 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/pointer.rb
   59 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/memorypointer.rb
   60 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/struct_layout_builder.rb
   61 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/struct.rb
   62 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/union.rb
   63 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/managedstruct.rb
   64 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/callback.rb
   65 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/io.rb
   66 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/autopointer.rb
   67 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/variadic.rb
   68 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/enum.rb
   69 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi/ffi.rb
   70 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi.rb
   71 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/lib.rb
   72 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/library_version.rb
   73 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/symbol.rb
   74 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/processor.rb
   75 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/image.rb
   76 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb
   77 /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/zbar-0.3.0/lib/zbar.rb

* Process memory map:

563644b2c000-563644e1a000 r-xp 00000000 fd:00 834610                     /home/vagrant/.rbenv/versions/2.3.7/bin/ruby
56364501a000-56364501f000 r--p 002ee000 fd:00 834610                     /home/vagrant/.rbenv/versions/2.3.7/bin/ruby
56364501f000-563645020000 rw-p 002f3000 fd:00 834610                     /home/vagrant/.rbenv/versions/2.3.7/bin/ruby
563645020000-563645032000 rw-p 00000000 00:00 0
563645d6d000-56364645e000 rw-p 00000000 00:00 0                          [heap]
7fa5e453c000-7fa5e53f8000 r--s 00000000 fd:00 834610                     /home/vagrant/.rbenv/versions/2.3.7/bin/ruby
7fa5e53f8000-7fa5e540d000 r-xp 00000000 fd:00 34078365                   /usr/lib64/libgcc_s-4.8.5-20150702.so.1
7fa5e540d000-7fa5e560c000 ---p 00015000 fd:00 34078365                   /usr/lib64/libgcc_s-4.8.5-20150702.so.1
7fa5e560c000-7fa5e560d000 r--p 00014000 fd:00 34078365                   /usr/lib64/libgcc_s-4.8.5-20150702.so.1
7fa5e560d000-7fa5e560e000 rw-p 00015000 fd:00 34078365                   /usr/lib64/libgcc_s-4.8.5-20150702.so.1
7fa5e560e000-7fa5e5638000 r-xp 00000000 fd:00 34031654                   /usr/local/lib/libzbar.so.0.2.0
7fa5e5638000-7fa5e5837000 ---p 0002a000 fd:00 34031654                   /usr/local/lib/libzbar.so.0.2.0
7fa5e5837000-7fa5e5838000 r--p 00029000 fd:00 34031654                   /usr/local/lib/libzbar.so.0.2.0
7fa5e5838000-7fa5e5839000 rw-p 0002a000 fd:00 34031654                   /usr/local/lib/libzbar.so.0.2.0
7fa5e5839000-7fa5e587c000 r-xp 00000000 fd:00 34488590                   /usr/lib64/libjpeg.so.62.1.0
7fa5e587c000-7fa5e5a7c000 ---p 00043000 fd:00 34488590                   /usr/lib64/libjpeg.so.62.1.0
7fa5e5a7c000-7fa5e5a7d000 r--p 00043000 fd:00 34488590                   /usr/lib64/libjpeg.so.62.1.0
7fa5e5a7d000-7fa5e5a7e000 rw-p 00044000 fd:00 34488590                   /usr/lib64/libjpeg.so.62.1.0
7fa5e5a7e000-7fa5e5a8e000 rw-p 00000000 00:00 0
7fa5e5a8e000-7fa5e5a95000 r-xp 00000000 fd:00 33562608                   /usr/lib64/librt-2.17.so
7fa5e5a95000-7fa5e5c94000 ---p 00007000 fd:00 33562608                   /usr/lib64/librt-2.17.so
7fa5e5c94000-7fa5e5c95000 r--p 00006000 fd:00 33562608                   /usr/lib64/librt-2.17.so
7fa5e5c95000-7fa5e5c96000 rw-p 00007000 fd:00 33562608                   /usr/lib64/librt-2.17.so
7fa5e5c96000-7fa5e5c98000 r-xp 00000000 fd:00 34488507                   /usr/lib64/libXau.so.6.0.0
7fa5e5c98000-7fa5e5e98000 ---p 00002000 fd:00 34488507                   /usr/lib64/libXau.so.6.0.0
7fa5e5e98000-7fa5e5e99000 r--p 00002000 fd:00 34488507                   /usr/lib64/libXau.so.6.0.0
7fa5e5e99000-7fa5e5e9a000 rw-p 00003000 fd:00 34488507                   /usr/lib64/libXau.so.6.0.0
7fa5e5e9a000-7fa5e5ebe000 r-xp 00000000 fd:00 34488505                   /usr/lib64/libv4lconvert.so.0.0.0
7fa5e5ebe000-7fa5e60be000 ---p 00024000 fd:00 34488505                   /usr/lib64/libv4lconvert.so.0.0.0
7fa5e60be000-7fa5e60c0000 r--p 00024000 fd:00 34488505                   /usr/lib64/libv4lconvert.so.0.0.0
7fa5e60c0000-7fa5e60c1000 rw-p 00026000 fd:00 34488505                   /usr/lib64/libv4lconvert.so.0.0.0
7fa5e60c1000-7fa5e6113000 rw-p 00000000 00:00 0
7fa5e6113000-7fa5e6124000 r-xp 00000000 fd:00 34488381                   /usr/lib64/libXext.so.6.4.0
7fa5e6124000-7fa5e6323000 ---p 00011000 fd:00 34488381                   /usr/lib64/libXext.so.6.4.0
7fa5e6323000-7fa5e6324000 r--p 00010000 fd:00 34488381                   /usr/lib64/libXext.so.6.4.0
7fa5e6324000-7fa5e6325000 rw-p 00011000 fd:00 34488381                   /usr/lib64/libXext.so.6.4.0
7fa5e6325000-7fa5e634c000 r-xp 00000000 fd:00 34488434                   /usr/lib64/libxcb.so.1.1.0
7fa5e634c000-7fa5e654b000 ---p 00027000 fd:00 34488434                   /usr/lib64/libxcb.so.1.1.0
7fa5e654b000-7fa5e654c000 r--p 00026000 fd:00 34488434                   /usr/lib64/libxcb.so.1.1.0
7fa5e654c000-7fa5e654d000 rw-p 00027000 fd:00 34488434                   /usr/lib64/libxcb.so.1.1.0
7fa5e654d000-7fa5e6551000 r-xp 00000000 fd:00 34808873                   /usr/lib64/libuuid.so.1.3.0
7fa5e6551000-7fa5e6750000 ---p 00004000 fd:00 34808873                   /usr/lib64/libuuid.so.1.3.0
7fa5e6750000-7fa5e6751000 r--p 00003000 fd:00 34808873                   /usr/lib64/libuuid.so.1.3.0
7fa5e6751000-7fa5e6752000 rw-p 00004000 fd:00 34808873                   /usr/lib64/libuuid.so.1.3.0
7fa5e6752000-7fa5e675b000 r-xp 00000000 fd:00 34488501                   /usr/lib64/libv4l2.so.0.0.0
7fa5e675b000-7fa5e695a000 ---p 00009000 fd:00 34488501                   /usr/lib64/libv4l2.so.0.0.0
7fa5e695a000-7fa5e695b000 r--p 00008000 fd:00 34488501                   /usr/lib64/libv4l2.so.0.0.0
7fa5e695b000-7fa5e6960000 rw-p 00009000 fd:00 34488501                   /usr/lib64/libv4l2.so.0.0.0
7fa5e6960000-7fa5e6964000 r-xp 00000000 fd:00 34488383                   /usr/lib64/libXv.so.1.0.0
7fa5e6964000-7fa5e6b63000 ---p 00004000 fd:00 34488383                   /usr/lib64/libXv.so.1.0.0
7fa5e6b63000-7fa5e6b64000 r--p 00003000 fd:00 34488383                   /usr/lib64/libXv.so.1.0.0
7fa5e6b64000-7fa5e6b65000 rw-p 00004000 fd:00 34488383                   /usr/lib64/libXv.so.1.0.0
7fa5e6b65000-7fa5e6c9d000 r-xp 00000000 fd:00 34488377                   /usr/lib64/libX11.so.6.3.0
7fa5e6c9d000-7fa5e6e9d000 ---p 00138000 fd:00 34488377                   /usr/lib64/libX11.so.6.3.0
7fa5e6e9d000-7fa5e6e9e000 r--p 00138000 fd:00 34488377                   /usr/lib64/libX11.so.6.3.0
7fa5e6e9e000-7fa5e6ea3000 rw-p 00139000 fd:00 34488377                   /usr/lib64/libX11.so.6.3.0
7fa5e6ea3000-7fa5e6eba000 r-xp 00000000 fd:00 34488594                   /usr/lib64/libICE.so.6.3.0
7fa5e6eba000-7fa5e70b9000 ---p 00017000 fd:00 34488594                   /usr/lib64/libICE.so.6.3.0
7fa5e70b9000-7fa5e70ba000 r--p 00016000 fd:00 34488594                   /usr/lib64/libICE.so.6.3.0
7fa5e70ba000-7fa5e70bb000 rw-p 00017000 fd:00 34488594                   /usr/lib64/libICE.so.6.3.0
7fa5e70bb000-7fa5e70bf000 rw-p 00000000 00:00 0
7fa5e70bf000-7fa5e70c6000 r-xp 00000000 fd:00 34488600                   /usr/lib64/libSM.so.6.0.1
7fa5e70c6000-7fa5e72c5000 ---p 00007000 fd:00 34488600                   /usr/lib64/libSM.so.6.0.1
7fa5e72c5000-7fa5e72c6000 r--p 00006000 fd:00 34488600                   /usr/lib64/libSM.so.6.0.1
7fa5e72c6000-7fa5e72c7000 rw-p 00007000 fd:00 34488600                   /usr/lib64/libSM.so.6.0.1
7fa5e72c7000-7fa5e72fe000 r-xp 00000000 fd:00 34068797                   /usr/lib64/libzbar.so.0.2.0
7fa5e72fe000-7fa5e74fd000 ---p 00037000 fd:00 34068797                   /usr/lib64/libzbar.so.0.2.0
7fa5e74fd000-7fa5e74fe000 r--p 00036000 fd:00 34068797                   /usr/lib64/libzbar.so.0.2.0
7fa5e74fe000-7fa5e74ff000 rw-p 00037000 fd:00 34068797                   /usr/lib64/libzbar.so.0.2.0
7fa5e74ff000-7fa5e752b000 r-xp 00000000 fd:00 817793                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
7fa5e752b000-7fa5e772a000 ---p 0002c000 fd:00 817793                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
7fa5e772a000-7fa5e772b000 r--p 0002b000 fd:00 817793                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
7fa5e772b000-7fa5e772c000 rw-p 0002c000 fd:00 817793                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
7fa5e772c000-7fa5e772d000 rw-p 00000000 00:00 0
7fa5e772d000-7fa5e7734000 r-xp 00000000 fd:00 101116287                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fa5e7734000-7fa5e7934000 ---p 00007000 fd:00 101116287                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fa5e7934000-7fa5e7935000 r--p 00007000 fd:00 101116287                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fa5e7935000-7fa5e7936000 rw-p 00008000 fd:00 101116287                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/stringio.so
7fa5e7936000-7fa5e7939000 r-xp 00000000 fd:00 994989                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fa5e7939000-7fa5e7b38000 ---p 00003000 fd:00 994989                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fa5e7b38000-7fa5e7b39000 r--p 00002000 fd:00 994989                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fa5e7b39000-7fa5e7b3a000 rw-p 00003000 fd:00 994989                     /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/trans/transdb.so
7fa5e7b3a000-7fa5e7b3c000 r-xp 00000000 fd:00 101116325                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fa5e7b3c000-7fa5e7d3b000 ---p 00002000 fd:00 101116325                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fa5e7d3b000-7fa5e7d3c000 r--p 00001000 fd:00 101116325                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fa5e7d3c000-7fa5e7d3d000 rw-p 00002000 fd:00 101116325                  /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/2.3.0/x86_64-linux/enc/encdb.so
7fa5e7d3d000-7fa5ee266000 r--p 00000000 fd:00 34078385                   /usr/lib/locale/locale-archive
7fa5ee266000-7fa5ee268000 r-xp 00000000 fd:00 33562573                   /usr/lib64/libfreebl3.so
7fa5ee268000-7fa5ee467000 ---p 00002000 fd:00 33562573                   /usr/lib64/libfreebl3.so
7fa5ee467000-7fa5ee468000 r--p 00001000 fd:00 33562573                   /usr/lib64/libfreebl3.so
7fa5ee468000-7fa5ee469000 rw-p 00002000 fd:00 33562573                   /usr/lib64/libfreebl3.so
7fa5ee469000-7fa5ee62c000 r-xp 00000000 fd:00 33562586                   /usr/lib64/libc-2.17.so
7fa5ee62c000-7fa5ee82b000 ---p 001c3000 fd:00 33562586                   /usr/lib64/libc-2.17.so
7fa5ee82b000-7fa5ee82f000 r--p 001c2000 fd:00 33562586                   /usr/lib64/libc-2.17.so
7fa5ee82f000-7fa5ee831000 rw-p 001c6000 fd:00 33562586                   /usr/lib64/libc-2.17.so
7fa5ee831000-7fa5ee836000 rw-p 00000000 00:00 0
7fa5ee836000-7fa5ee937000 r-xp 00000000 fd:00 34078394                   /usr/lib64/libm-2.17.so
7fa5ee937000-7fa5eeb36000 ---p 00101000 fd:00 34078394                   /usr/lib64/libm-2.17.so
7fa5eeb36000-7fa5eeb37000 r--p 00100000 fd:00 34078394                   /usr/lib64/libm-2.17.so
7fa5eeb37000-7fa5eeb38000 rw-p 00101000 fd:00 34078394                   /usr/lib64/libm-2.17.so
7fa5eeb38000-7fa5eeb40000 r-xp 00000000 fd:00 34078390                   /usr/lib64/libcrypt-2.17.so
7fa5eeb40000-7fa5eed3f000 ---p 00008000 fd:00 34078390                   /usr/lib64/libcrypt-2.17.so
7fa5eed3f000-7fa5eed40000 r--p 00007000 fd:00 34078390                   /usr/lib64/libcrypt-2.17.so
7fa5eed40000-7fa5eed41000 rw-p 00008000 fd:00 34078390                   /usr/lib64/libcrypt-2.17.so
7fa5eed41000-7fa5eed6f000 rw-p 00000000 00:00 0
7fa5eed6f000-7fa5eed71000 r-xp 00000000 fd:00 34078392                   /usr/lib64/libdl-2.17.so
7fa5eed71000-7fa5eef71000 ---p 00002000 fd:00 34078392                   /usr/lib64/libdl-2.17.so
7fa5eef71000-7fa5eef72000 r--p 00002000 fd:00 34078392                   /usr/lib64/libdl-2.17.so
7fa5eef72000-7fa5eef73000 rw-p 00003000 fd:00 34078392                   /usr/lib64/libdl-2.17.so
7fa5eef73000-7fa5eef8a000 r-xp 00000000 fd:00 33562602                   /usr/lib64/libpthread-2.17.so
7fa5eef8a000-7fa5ef189000 ---p 00017000 fd:00 33562602                   /usr/lib64/libpthread-2.17.so
7fa5ef189000-7fa5ef18a000 r--p 00016000 fd:00 33562602                   /usr/lib64/libpthread-2.17.so
7fa5ef18a000-7fa5ef18b000 rw-p 00017000 fd:00 33562602                   /usr/lib64/libpthread-2.17.so
7fa5ef18b000-7fa5ef18f000 rw-p 00000000 00:00 0
7fa5ef18f000-7fa5ef1b1000 r-xp 00000000 fd:00 34078386                   /usr/lib64/ld-2.17.so
7fa5ef1fe000-7fa5ef24c000 rw-p 00000000 00:00 0
7fa5ef274000-7fa5ef298000 r--s 00000000 fd:00 33562602                   /usr/lib64/libpthread-2.17.so
7fa5ef298000-7fa5ef29f000 r--s 00000000 fd:00 100665441                  /usr/lib64/gconv/gconv-modules.cache
7fa5ef29f000-7fa5ef3a5000 rw-p 00000000 00:00 0
7fa5ef3a8000-7fa5ef3a9000 rw-p 00000000 00:00 0
7fa5ef3a9000-7fa5ef3aa000 rwxp 00000000 00:00 0
7fa5ef3aa000-7fa5ef3ab000 ---p 00000000 00:00 0
7fa5ef3ab000-7fa5ef3b0000 rw-p 00000000 00:00 0
7fa5ef3b0000-7fa5ef3b1000 r--p 00021000 fd:00 34078386                   /usr/lib64/ld-2.17.so
7fa5ef3b1000-7fa5ef3b2000 rw-p 00022000 fd:00 34078386                   /usr/lib64/ld-2.17.so
7fa5ef3b2000-7fa5ef3b3000 rw-p 00000000 00:00 0
7fff14593000-7fff14d92000 rw-p 00000000 00:00 0                          [stack]
7fff14df2000-7fff14df4000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]


[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

Aborted (core dumped)
gdb ~/.rbenv/versions/2.3.7/bin/ruby ./core.29062
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-110.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/vagrant/.rbenv/versions/2.3.7/bin/ruby...done.
[New LWP 29062]
[New LWP 29075]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `ruby test.rb'.
Program terminated with signal 6, Aborted.
#0  0x00007fa5ee49f277 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install glibc-2.17-222.el7.x86_64 libICE-1.0.9-9.el7.x86_64 libSM-1.2.2-2.el7.x86_64 libX11-1.6.5-1.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXext-1.3.3-3.el7.x86_64 libXv-1.0.11-1.el7.x86_64 libgcc-4.8.5-28.el7_5.1.x86_64 libjpeg-turbo-1.2.90-5.el7.x86_64 libuuid-2.23.2-52.el7.x86_64 libv4l-0.9.5-4.el7.x86_64 libxcb-1.12-1.el7.x86_64 nss-softokn-freebl-3.36.0-5.el7_5.x86_64 zbar-0.10-27.el7.x86_64
(gdb) bt
#0  0x00007fa5ee49f277 in raise () from /lib64/libc.so.6
#1  0x00007fa5ee4a0968 in abort () from /lib64/libc.so.6
#2  0x0000563644d2303d in die () at error.c:407
#3  rb_bug_context (ctx=ctx@entry=0x563645ddca80, fmt=fmt@entry=0x563644d5da2a "Segmentation fault at %p") at error.c:437
#4  0x0000563644c1c55e in sigsegv (sig=<optimized out>, info=0x563645ddcbb0, ctx=0x563645ddca80) at signal.c:890
#5  <signal handler called>
#6  0x0000000000000000 in ?? ()
#7  0x00007fa5e72d3358 in zbar_image_convert_resize () from /usr/lib64/libzbar.so.0
#8  0x00007fa5e752155d in ffi_call_unix64 () from /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
#9  0x00007fa5e7520edc in ffi_call_int () from /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
#10 0x00007fa5e7520f3d in ffi_call () from /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
#11 0x00007fa5e750e68d in rbffi_CallFunction (argc=<optimized out>, argv=<optimized out>, function=0x7fa5e72d33d0 <zbar_image_convert>, fnInfo=0x56364606e470) at Call.c:409
#12 0x00007fa5e7511870 in attached_method_invoke (cif=<optimized out>, mretval=0x7fff14d8dc50, parameters=<optimized out>, user_data=<optimized out>) at MethodHandle.c:65
#13 0x00007fa5e752146d in ffi_closure_unix64_inner () from /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
#14 0x00007fa5e75216f0 in ffi_closure_unix64 () from /home/vagrant/.rbenv/versions/2.3.7/lib/ruby/gems/2.3.0/gems/ffi-1.9.23/lib/ffi_c.so
#15 0x0000563644c9f736 in vm_call_cfunc_with_frame (ci=<optimized out>, cc=<optimized out>, calling=<optimized out>, reg_cfp=0x7fa5ef39ed90, th=0x563645d6e5e0) at vm_insnhelper.c:1642
#16 vm_call_cfunc (th=0x563645d6e5e0, reg_cfp=0x7fa5ef39ed90, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:1737
#17 0x0000563644cad953 in vm_call_method (th=0x563645d6e5e0, cfp=0x7fa5ef39ed90, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:2177
#18 0x0000563644ca8189 in vm_exec_core (th=th@entry=0x563645d6e5e0, initial=initial@entry=0) at insns.def:994
#19 0x0000563644cabf11 in vm_exec (th=0x563645d6e5e0) at vm.c:1693
#20 0x0000563644cac6c3 in invoke_block (th=th@entry=0x563645d6e5e0, iseq=iseq@entry=0x563645fb58c0, self=self@entry=94791102322400, cref=cref@entry=0x0, type=<optimized out>, opt_pc=0, block=<optimized out>) at vm.c:921
#21 0x0000563644cae411 in invoke_block_from_c_0 (argc=<optimized out>, blockptr=<optimized out>, cref=<optimized out>, splattable=<optimized out>, argv=<optimized out>, self=<optimized out>, block=<optimized out>, th=<optimized out>)
    at vm.c:973
#22 invoke_block_from_c_splattable (cref=<optimized out>, blockptr=<optimized out>, argv=<optimized out>, argc=<optimized out>, self=<optimized out>, block=<optimized out>, th=<optimized out>) at vm.c:990
#23 vm_yield (argc=<optimized out>, argv=<optimized out>, th=<optimized out>) at vm.c:1025
#24 rb_yield_0 (argv=<optimized out>, argc=<optimized out>) at vm_eval.c:1013
#25 rb_yield_1 (val=<optimized out>) at vm_eval.c:1019
#26 rb_yield (val=val@entry=94791102318600) at vm_eval.c:1029
#27 0x0000563644bba9f9 in rb_obj_tap (obj=94791102318600) at object.c:692
#28 0x0000563644c9f736 in vm_call_cfunc_with_frame (ci=<optimized out>, cc=<optimized out>, calling=<optimized out>, reg_cfp=0x7fa5ef39ee50, th=0x563645d6e5e0) at vm_insnhelper.c:1642
#29 vm_call_cfunc (th=0x563645d6e5e0, reg_cfp=0x7fa5ef39ee50, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:1737
#30 0x0000563644cad953 in vm_call_method (th=0x563645d6e5e0, cfp=0x7fa5ef39ee50, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:2177
#31 0x0000563644ca80be in vm_exec_core (th=th@entry=0x563645d6e5e0, initial=initial@entry=0) at insns.def:963
#32 0x0000563644cabf11 in vm_exec (th=0x563645d6e5e0) at vm.c:1693
#33 0x0000563644cac6c3 in invoke_block (th=th@entry=0x563645d6e5e0, iseq=iseq@entry=0x5636462295c0, self=self@entry=94791100343800, cref=cref@entry=0x0, type=<optimized out>, opt_pc=0, block=<optimized out>) at vm.c:921
#34 0x0000563644cae411 in invoke_block_from_c_0 (argc=<optimized out>, blockptr=<optimized out>, cref=<optimized out>, splattable=<optimized out>, argv=<optimized out>, self=<optimized out>, block=<optimized out>, th=<optimized out>)
    at vm.c:973
#35 invoke_block_from_c_splattable (cref=<optimized out>, blockptr=<optimized out>, argv=<optimized out>, argc=<optimized out>, self=<optimized out>, block=<optimized out>, th=<optimized out>) at vm.c:990
#36 vm_yield (argc=<optimized out>, argv=<optimized out>, th=<optimized out>) at vm.c:1025
#37 rb_yield_0 (argv=<optimized out>, argc=<optimized out>) at vm_eval.c:1013
#38 rb_yield_1 (val=<optimized out>) at vm_eval.c:1019
#39 rb_yield (val=<optimized out>) at vm_eval.c:1029
#40 0x0000563644cd33dd in rb_ary_each (ary=ary@entry=94791102319040) at array.c:1815
---Type <return> to continue, or q <return> to quit---
#41 0x0000563644d0bdbc in dir_s_glob (argc=<optimized out>, argv=<optimized out>, obj=<optimized out>) at dir.c:2338
#42 0x0000563644c9f736 in vm_call_cfunc_with_frame (ci=<optimized out>, cc=<optimized out>, calling=<optimized out>, reg_cfp=0x7fa5ef39ef90, th=0x563645d6e5e0) at vm_insnhelper.c:1642
#43 vm_call_cfunc (th=0x563645d6e5e0, reg_cfp=0x7fa5ef39ef90, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:1737
#44 0x0000563644cad953 in vm_call_method (th=0x563645d6e5e0, cfp=0x7fa5ef39ef90, calling=<optimized out>, ci=<optimized out>, cc=<optimized out>) at vm_insnhelper.c:2177
#45 0x0000563644ca80be in vm_exec_core (th=th@entry=0x563645d6e5e0, initial=initial@entry=0) at insns.def:963
#46 0x0000563644cabf11 in vm_exec (th=0x563645d6e5e0) at vm.c:1693
#47 0x0000563644cb5f4e in rb_iseq_eval_main (iseq=iseq@entry=0x563646229750) at vm.c:1936
#48 0x0000563644b50cc4 in ruby_exec_internal (n=0x563646229750) at eval.c:245
#49 0x0000563644b5483d in ruby_exec_node (n=0x563646229750) at eval.c:310
#50 ruby_run_node (n=<optimized out>) at eval.c:302
#51 0x0000563644b5092b in main (argc=2, argv=0x7fff14d8f388) at main.c:36
(gdb) quit

Wouldn't read a valid PGM file

In Image::from_pgm, the test for a valid pgm file is wrong.

  image_data = string.gsub(/^(P5)\s([0-9]+)\s([0-9]+)\s([0-9]+)\s/, '')
  if $1 != 'P5'
    raise ArgumentError, "input must be a PGM file"
  end

The PGM spec says that any string starting with # is a comment. The test file I tried, failed to load, as it had a comment line between the P5 line, and the width line.

i.e. it looked like
P5
# test_qrcode.pgm
300 300
255
...

  image_data = pgm.gsub(/^(P5)\s(#.*\n)?([0-9]+)\s([0-9]+)\s([0-9]+)\s/, '')

Would match this file, but shift $2 to $3, $3 to $4 and $4 to $5, even if there was no comment line. Of course, it is possible to have multiple comment lines, at any point, but having a comment after the P5 seems to be standard.

JPEG datastream contains no image

zbar is bulid with ImageMagick but method from_jpeg fails with "JPEG datastream contains no image". The standalone application zbarimg processes jpeg images without problems. The gem works with PGM images.

from_jpeg - Segmentation fault at 0x0000000000000000

This seems related to some of the other JPEG issues that have been posted before: #5 #2 #15

I'm seeing a seg fault when calling from_jpeg on Zbar::Image which causes the Ruby process to crash. Oddly enough zbarimg at the command line works fine. I'm using zbar 0.10 on the Amazon Linux AMI.

I can personally workaround this for now, but figured I'd mention it.

/opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/image.rb:94: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0055 p:---- s:0303 e:000302 CFUNC  :zbar_image_convert
c:0054 p:0015 s:0297 e:000296 METHOD /opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/image.rb:94
c:0053 p:0036 s:0291 e:000290 BLOCK  /opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:47 [FINISH]
c:0052 p:---- s:0287 e:000286 CFUNC  :tap
c:0051 p:0016 s:0283 e:000282 METHOD /opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:45
c:0050 p:0019 s:0278 e:000277 METHOD /opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/jpeg.rb:15
c:0049 p:0012 s:0274 e:000273 METHOD /opt/rubies/ruby-2.5.5/lib/ruby/gems/2.5.0/gems/zbar-0.3.0/lib/zbar/image.rb:20

ZBAR ON MAC BROKEN?

I am on Mac Monterrey and all of a sudden ZBar is not working any more. It still works on Linux and on Heroku. Did something on Mac break ZBar?

Q:Heroku Zbar Didn't find libzbar on your system (LoadError)

I have a rails application which uses zbar. It works fine on my developer machine But when i tried to deploy it to Heroku my commit was rejected with the following message:

app/web.1: /app/vendor/bundle/ruby/2.0.0/gems/zbar-0.2.2/lib/zbar/lib.rb:12:in rescue in <module:ZBar>': Didn't find libzbar on your system (LoadError) app/web.1: Please install zbar (http://zbar.sourceforge.net/) or set ZBAR_LIB if it's in a weird place app/web.1: FFI::Library::ffi_lib() failed with error: library names list must not be empty app/web.1: from /app/vendor/bundle/ruby/2.0.0/gems/zbar-0.2.2/lib/zbar/lib.rb:9:inmodule:ZBar'

Here is my gemfile;
gem 'zbar', '~> 0.2.2'

my /.buildpacks:
https://github.com/ballantyne/heroku-buildpack-zbar
https://github.com/heroku/heroku-buildpack-ruby.git

Why does this happen?
Thanks.

Implementing

Hello...

Great library here. Glad you were able to make something like this that can be implemented with Rails. I was hoping you could help me with an issue I"m having. I installed the gem file into my project and have installed the C Library on my mac. Question is where to I implement the code? IN my Gemfile I have gem 'zbar'. :require => 'zbar'. Now where would be a good place to implement the rest of the code ->

ZBar::Image.from_jpeg(File.read('test.jpg')).process
=> [#<Zbar::Symbol:0x10147c668
@addon="",
@DaTa="9876543210128",
@location= [...],
@quality=15,
@Symbology="EAN-13">]

Any help would be greatly appreciated. I'm a newbie to Rails lol.

Can't read code with some noise. iOS app using zbar scans it fine.

I can read the QR codes from every image I have attempted to read so far except the attached one. I see it has some noise introduced by the printing/scanning process, but it should read fine. What do I need to do to get this code to read? I can't use jpeg so I am converting the image from the pdf into a pgm then decoding the pgm in zbar.

onlybad.pdf
onlybad pdf page0-1516203946

LoadError: no library specified

I am trying to write a quick test case using this gem and I am getting the following:

LoadError: no library specified
from /Library/Ruby/Gems/1.8/gems/ffi-1.0.9/lib/ffi/library.rb:93:in ffi_libraries' from /Library/Ruby/Gems/1.8/gems/ffi-1.0.9/lib/ffi/library.rb:129:inattach_function'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.