1. 22 12月, 2012 1 次提交
    • J
      [media] rc: Fix double free in gpio_ir_recv_probe() · e5d85b9a
      Jesper Juhl 提交于
      At the 'err_request_irq' label, rc_unregister_device(rcdev) frees its
      argument. So when we fall through to the 'err_gpio_request' label
      further down and call rc_free_device(rcdev) then that's a double free.
      Fix that by moving 'rcdev = NULL' from after the call to
      rc_free_device() to after rc_unregister_device(). That fixes the
      problem since rc_free_device() just does nothing if passed NULL and
      there's no further use of 'rcdev' after the call to rc_free_device()
      so it's not needed there.
      Signed-off-by: NJesper Juhl <jj@chaosbits.net>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      e5d85b9a
  2. 27 10月, 2012 1 次提交
    • D
      [media] rc-core: add separate defines for protocol bitmaps and numbers · c003ab1b
      David Härdeman 提交于
      The RC_TYPE_* defines are currently used both where a single protocol is
      expected and where a bitmap of protocols is expected.
      
      Functions like rc_keydown() and functions which add/remove entries to the
      keytable want a single protocol. Future userspace APIs would also
      benefit from numeric protocols (rather than bitmap ones). Keytables are
      smaller if they can use a small(ish) integer rather than a bitmap.
      
      Other functions or struct members (e.g. allowed_protos,
      enabled_protocols, etc) accept multiple protocols and need a bitmap.
      
      Using different types reduces the risk of programmer error. Using a
      protocol enum whereever possible also makes for a more future-proof
      user-space API as we don't need to worry about a sufficient number of
      bits being available (e.g. in structs used for ioctl() calls).
      
      The use of both a number and a corresponding bit is dalso one in e.g.
      the input subsystem as well (see all the references to set/clear bit when
      changing keytables for example).
      
      This patch separate the different usages in preparation for
      upcoming patches.
      
      Where a single protocol is expected, enum rc_type is used; where one or more
      protocol(s) are expected, something like u64 is used.
      
      The patch has been rewritten so that the format of the sysfs "protocols"
      file is no longer altered (at the loss of some detail). The file itself
      should probably be deprecated in the future though.
      Signed-off-by: NDavid Härdeman <david@hardeman.nu>
      Cc: Andy Walls <awalls@md.metrocast.net>
      Cc: Maxim Levitsky <maximlevitsky@gmail.com>
      Cc: Antti Palosaari <crope@iki.fi>
      Cc: Mike Isely <isely@pobox.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      c003ab1b
  3. 07 7月, 2012 1 次提交
  4. 26 6月, 2012 3 次提交
  5. 20 3月, 2012 1 次提交
  6. 08 3月, 2012 1 次提交