Opened 7 years ago

Last modified 7 years ago

#296 assigned task

Fix stdvios access and re-enable RTLD_DEEPBIND in roardl.

Reported by: ph3-der-loewe Owned by: ph3-der-loewe
Priority: medium Milestone: RoarAudio major release 1.1
Component: libroar and friends Version: current
Keywords: plugins soname_change Cc:
Architecture: Compiler:
Difficulty: normal Kernel:
Operating System: Parent Tickets:
Patch attached: no Protocol:
Sound driver: Topic: Cleanup

Description (last modified by ph3-der-loewe)

  • Update stdvios interface (see comments).
  • Re-enable RTLD_DEEPBIND.
  • See comments for more infos.

Subtickets (add)

Change History (2)

comment:1 Changed 7 years ago by ph3-der-loewe

  • Owner set to ph3-der-loewe
  • Status changed from new to assigned

Will start working on this now.

comment:2 Changed 7 years ago by ph3-der-loewe

  • Description modified (diff)
  • Keywords soname_change added
  • Milestone changed from RoarAudio major release 1.0 to RoarAudio major release 1.1
  • Priority changed from wishlist to medium
  • Summary changed from Plugin context seperation should seperate stdvios. to Fix stdvios access and re-enable RTLD_DEEPBIND in roardl.
  • Topic changed from New feature to Cleanup
  • Type changed from enhancement to task

I needed to disable the usage of RTLD_DEEPBIND as it's usage will not allow the main program to change the stdvios of any plugin (different context). This should be solved the following way:

  • Update stdvios to use double pointers and use macros to dereference them (#define roar_stdout (*roar_stdout_real))
  • Re-enable usage of RTLD_DEEPBIND.
  • Check whether this is also a an alternative workaround for win32.
  • This needs to be done at next SONAME change.

I re-assign this ticket to the next major release and tag correctly.

Current status:

  • Disabled RTLD_DEEPBIND in 1.0beta9.
  • Works (as of 1.0beta9).
  • Ticket is still open and needs to be closed with the next SONAME change.
Note: See TracTickets for help on using tickets.