From 71d1591be2fe5335cfbb3a92bf610bb1b44b8539 Mon Sep 17 00:00:00 2001 From: Koh Choong Yong Date: Thu, 29 Jun 2017 16:42:09 +0800 Subject: [PATCH] fix: unknown MIFARE tag error. Pointer type defined and pointer type passed in is not what C code expects --- lib/ruby-nfc/tags/mifare/tag.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ruby-nfc/tags/mifare/tag.rb b/lib/ruby-nfc/tags/mifare/tag.rb index 72f6c9d..36536ae 100644 --- a/lib/ruby-nfc/tags/mifare/tag.rb +++ b/lib/ruby-nfc/tags/mifare/tag.rb @@ -21,7 +21,7 @@ class Error < Exception; end } # common freefare functions prototypes - attach_function :freefare_tag_new, [:pointer, LibNFC::ISO14443a.by_value], :pointer + attach_function :freefare_tag_new, [:pointer, LibNFC::Target.by_value], :pointer attach_function :freefare_free_tag, [:pointer], :void # tag @@ -37,7 +37,7 @@ class Tag < NFC::Tag def initialize(target, reader) super(target, reader) - @pointer = Mifare.freefare_tag_new(reader.ptr, target[:nti][:nai]) + @pointer = Mifare.freefare_tag_new(reader.ptr, target) raise Mifare::Error, "Unknown mifare tag" if @pointer.null? end