Re: [pulseaudio-discuss] [RFC] Pulseaudio jack sense

2011-04-13 Thread Liam Girdwood
On Tue, 2011-04-12 at 21:58 +0100, Mark Brown wrote:
 On Tue, Apr 12, 2011 at 02:14:04PM -0500, pl bossart wrote:
   Jack detect does not use the ALSA kernel subsystem but does instead
   use the input subsystem for jack status. It makes sense to create a
   new module so we can then use jack detect for non ALSA sound devices.
 
  I'm a bit lost here. What are 'non ALSA sound devices'?
  And to the best of my knowledge these events are only generated by
  ALSA drivers...
  Am I missing something here?
 
 These events can be generated by anything - prior to my implementing the
 ALSA support for this all the implementations in mainline were doing
 this via the gpio-keys driver since they were detecting a microswitch in
 the jack.  I'd expect that non-audio jacks may also end up reporting via
 the same interface (video for example), but I'm not sure if Pulse would
 be interested in anything non-ALSA.

Yeah, this was one of the considerations here along with any OSS audio
cards (as there are still a few OSS drivers upstream).

This can be moved and integrated into module-alsa-card if desired ?

Liam

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


[pulseaudio-discuss] review+pull-request: Passthrough support

2011-04-13 Thread Arun Raghavan
Hey folks,
My passthrough work is now at a point where I think it's good to pull to
master. All the core code for clients to signal that they are providing
a compressed format, and sinks to signal what formats they support is
there. The API is essentially the same as discussed earlier on-list,
with some small tweaks along the way as necessary.

Still pending are proper detection/signalling of available formats on
ALSA devices is to be done (Colin's looking at some of the plumbing for
S/PDIF, and HDMI ELD/EDID-based lookups are something that we need as
well), and better handling of monitors (we suspend them for now, which
works), and volumes (Tanu's got some on-going work on this).

NOTE: given the above about ALSA, topmost patch should probably not be
pulled, but is handy to have for testing.

In addition to the passthrough branch, there is a passthrough-bt branch
which has changes to the bluetooth sink to support streaming MP3 to
headsets that support it. This also needs some work before being ready
to pull.

The changes needed to actually use this in GStreamer are also done, but
not upstream yet. I need to do some rebasing to make this stuff good to
push out, so details on this in a following mail.

Comments, feedback will be very much appreciated. :)

Cheers,
Arun



The following changes since commit aaab340d4e3c57d58755151310f59a0ee96554b1:

  bluetooth-device: fix rounding errors caused by few bt volume steps 
(2011-04-05 11:24:12 +0100)

are available in the git repository at:
  git://git.collabora.co.uk/git/user/arun/pulseaudio.git passthrough

Arun Raghavan (37):
  sink: Trivial typo fix
  sample: Use PA_SAMPLE_INVALID instead of numeric value
  core: Add a pa_format_info structure
  format: Add some properties and internal API
  sink: Extend API for compressed formats support
  core: Add extended stream API to support compressed formats
  format: Add convenience API to check if a format is PCM or not
  sink: Remove PASSTHROUGH flag
  tests: Add a trivial test for the extended API
  sink-input: Minor cleanups
  sink-input: Return NOTSUPPORTED if format negotiation fails
  sink-input: Don't assert on bad formats
  format: Avoid some code duplication
  sink: Fix leak in pa_sink_check_formats()
  sink-input: Kill passthrough streams if moving to an unsupported sink
  core: Fix some FIXMEs for the extended API
  alsa-mixer: Remove passthrough profiles
  sink: Trivial typo fix in comment
  core: Suspend monitor when a sink enters passthrough mode
  alsa: Reconfigure sink sample rate for passthrough inputs
  format: Const-ify some parameters
  format: Add some convenience functions for printing
  stream: Add API to get a stream's pa_format_info
  introspect: Get formats for sinks
  introspect: Get format of sink input
  format: Add a type for DTS
  core: Factor out passthrough checks into their own functions
  sink-input: Don't assert if passthrough connection fails
  sink-input: Don't restore volume for passthrough streams
  sink-input: Add a format-lost event
  format: Export pa_format_info_is_compatible in API
  format: Add correct sample spec conversion for E-AC3
  sink-input: Provide more information to client when format is lost
  stream-restore: Check for readability before reading volume
  format: Extend properties to handle lists/ranges
  format: Add some convenience API for setting properties
  alsa: WIP AC3/E-AC3/DTS passthrough negotiation support

Pierre-Louis Bossart (1):
  sink-input: Don't resample passthrough inputs

 PROTOCOL   |   28 ++
 configure.ac   |8 +-
 po/POTFILES.in |1 +
 src/Makefile.am|   22 +-
 src/map-file   |   19 +
 src/modules/alsa/alsa-sink.c   |  110 +-
 .../mixer/paths/iec958-passthrough-output.conf |   19 -
 src/modules/alsa/mixer/profile-sets/default.conf   |7 -
 src/modules/echo-cancel/module-echo-cancel.c   |2 +-
 src/modules/module-combine.c   |2 +-
 src/modules/module-device-manager.c|4 +-
 src/modules/module-equalizer-sink.c|2 +-
 src/modules/module-intended-roles.c|   10 +-
 src/modules/module-ladspa-sink.c   |2 +-
 src/modules/module-loopback.c  |2 +-
 src/modules/module-remap-sink.c|2 +-
 src/modules/module-sine.c  |2 +-
 src/modules/module-stream-restore.c|   10 +-
 src/modules/module-virtual-sink.c  |2 +-
 src/modules/rtp/module-rtp-recv.c  |2 +-
 src/pulse/def.h|   17 +-
 src/pulse/format.c

Re: [pulseaudio-discuss] starting multiple pulseaudio instances for the same user

2011-04-13 Thread Antoine Martin
I have found a  workaround for this problem by setting a different $HOME
before launching each pulseaudio instance for the same $USER.

Since the pid file option says:
use-pid-file= Create a PID file in /tmp/pulse-$USER/pid. Of this is
enabled you may use commands like --kill or --check. If you are planning
to start more  than  one  PulseAudio process per user, you better
disable this option since it effectively disables multiple instances.
Takes a boolean argument, defaults to yes. The --no-cpu-limit command
line option takes precedence.
I think it is fair to assume that multiple instances per user should
work, shouldn't it?

The problem seems to come from the softlink from:
$HOME/.pulse/${MACHINE_ID}-runtime
Where MACHINE_ID=`cat /var/lib/dbus/machine-id`
And when this link exists you cannot start another instance as it will
block on the autospawn.lock.
(tested on a fully up to date Fedora 14 system)

Thanks
Antoine







On 04/09/2011 03:20 AM, Antoine Martin wrote:
 Hi,
 
 How can I start multiple copies of pulseaudio for the same $USER, but in
 different contexts?
 This was working a while back (last year or so - not sure about version
 numbers).. but doesn't any more?
 
 My software starts a virtual X server (xpra, vnc..), dbus and a
 dedicated pulseaudio server for each session application it launches.
 This allows it to redirect the sound (in and out) to/from remote
 machines (potentially multiple at once too, some directly, some via
 gstreamer+vorbis over ssh) - all this together with the display. see (1)
 
 Each application session gets its own environment and starts
 pulseaudio with:
 /usr/bin/pulseaudio --start - --disable-shm=true --daemonize=false
 --use-pid-file=false --system=false --exit-idle-time=-1 -n
 --load=module-suspend-on-idle --load=module-null-sink
 --load=module-native-protocol-unix socket=/tmp/pulse-$DISPLAY/native
 
 A single $USER may start dozens of those sessions, each with a different
 (virtual) $DISPLAY.
 Now, when I start the second instance I can see that it somehow finds
 the previous copy (not the one used by my local X11 session)
 [pid  3044]
 open(/home/antoine/.pulse/70a1ab2a8c9d6cb7625f1706000d-runtime/autospawn.lock,
 O_RDWR|O_CREAT|O_NOCTTY|O_NOFOLLOW, 0600) = 5
 [pid  3044] fcntl(5, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0,
 len=0}
 From that point onwards, nothing happens.
 
 Can you please advise on how to restore this functionality?
 
 Thanks
 Antoine
 
 (1)
 http://winswitch.org/
 ___
 pulseaudio-discuss mailing list
 pulseaudio-discuss@mail.0pointer.de
 https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


[pulseaudio-discuss] Please help me to understand this

2011-04-13 Thread Claude Frantz

Hello !

While running a program, it entered a fatal error state. See about the 
backtrace when running under gdb.


I'm not sure if this is an error in pulseaudio and if this bug is known.

Please help me. Many thanks !

Claude

Program received signal SIGSEGV, Segmentation fault.
pa_atomic_load (l=0x5a81471c) at pulsecore/atomic.h:57
57  return a-value;
(gdb) bt
#0  pa_atomic_load (l=0x5a81471c) at pulsecore/atomic.h:57
#1  pa_flist_pop (l=0x5a81471c) at pulsecore/flist.c:191
#2  0x0738e680 in mempool_allocate_slot (p=0xadc0b9c0)
at pulsecore/memblock.c:250
#3  0x07390a4a in pa_memblock_new_pool (p=0xadc0b9c0, length=40960)
at pulsecore/memblock.c:325
#4  0x07390b80 in pa_memblock_new (p=0xadc0b9c0, length=40960)
at pulsecore/memblock.c:213
#5  0x0703a308 in pa_stream_write (s=0xadc02e08, data=0xadc052a8,
length=40960, free_cb=0, offset=0, seek=PA_SEEK_RELATIVE)
at pulse/stream.c:1354
#6  0x009b8c65 in ?? () from /usr/lib/alsa-lib/libasound_module_pcm_pulse.so
#7  0x0427cb92 in ?? () from /lib/libasound.so.2
#8  0x042392e8 in ?? () from /lib/libasound.so.2
#9  0x0427cf97 in ?? () from /lib/libasound.so.2
#10 0x04231af5 in snd_pcm_writei () from /lib/libasound.so.2
#11 0x0142943e in ?? () from /usr/lib/libportaudio.so.2
#12 0x014299c8 in ?? () from /usr/lib/libportaudio.so.2
#13 0x0142e37d in ?? () from /usr/lib/libportaudio.so.2
#14 0x01423f4a in Pa_WriteStream () from /usr/lib/libportaudio.so.2
#15 0xae564a1d in soundout_ (idevout=0xae58fd6c, nrate0=0xae582e64,
recordedSamples=0xb2d16500, nframes0=0xae55f35c, iqmode=0xae58fdb8)
at sound.c:134
---Type return to continue, or q return to quit---
#16 0xae56c91e in tx () at tx.f90:198
#17 0x00458e99 in start_thread () from /lib/libpthread.so.0
#18 0x00397d2e in clone () from /lib/libc.so.6
(gdb)

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Please help me to understand this

2011-04-13 Thread Daniel Mack
On Wed, Apr 13, 2011 at 6:03 PM, Claude Frantz
claudefrantzx...@lavabit.com wrote:
 Hello !

 While running a program, it entered a fatal error state. See about the
 backtrace when running under gdb.

 I'm not sure if this is an error in pulseaudio and if this bug is known.

AFAIK, this bug is not known, and I haven't seen any such effects yet.
Which program is that? Can you reproduce the bug?

To me, it smells like a memory corruption outside the PulseAudio code,
but that's just guessing. Could you try running the binary in
valgrind? Maybe that shows anything.

Daniel
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] starting multiple pulseaudio instances for the same user

2011-04-13 Thread Colin Guthrie
'Twas brillig, and Antoine Martin at 08/04/11 22:20 did gyre and gimble:
 Hi,
 
 How can I start multiple copies of pulseaudio for the same $USER, but in
 different contexts?
 This was working a while back (last year or so - not sure about version
 numbers).. but doesn't any more?
 
 My software starts a virtual X server (xpra, vnc..), dbus and a
 dedicated pulseaudio server for each session application it launches.
 This allows it to redirect the sound (in and out) to/from remote
 machines (potentially multiple at once too, some directly, some via
 gstreamer+vorbis over ssh) - all this together with the display. see (1)
 
 Each application session gets its own environment and starts
 pulseaudio with:
 /usr/bin/pulseaudio --start - --disable-shm=true --daemonize=false
 --use-pid-file=false --system=false --exit-idle-time=-1 -n
 --load=module-suspend-on-idle --load=module-null-sink
 --load=module-native-protocol-unix socket=/tmp/pulse-$DISPLAY/native
 
 A single $USER may start dozens of those sessions, each with a different
 (virtual) $DISPLAY.
 Now, when I start the second instance I can see that it somehow finds
 the previous copy (not the one used by my local X11 session)
 [pid  3044]
 open(/home/antoine/.pulse/70a1ab2a8c9d6cb7625f1706000d-runtime/autospawn.lock,
 O_RDWR|O_CREAT|O_NOCTTY|O_NOFOLLOW, 0600) = 5
 [pid  3044] fcntl(5, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0,
 len=0}
 From that point onwards, nothing happens.
 
 Can you please advise on how to restore this functionality?

This is something that is not supported.

PA is, plain and simple, a per-user daemon.

If you want to direct sound from different DISPLAYs to different PA
servers/sinks you can use the PULSE_SERVER and/or PULSE_SINK property on
the X11 root window.

This functionality will get even more difficult to hack round in the
future when XDG_SESSION_DIR is supported (i.e. when it's rolled out via
systemd and supported by PA) so I'd recommend trying to find a way that
works where just one PA daemon per-user is started but appropriate
hacking of the X11 root window properties is done instead to acheive the
same result.

There will ultimately likely always be ways to get the end result you
need tho' :)

Col





-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Please help me to understand this

2011-04-13 Thread Claude Frantz

On 04/13/2011 06:32 PM, Daniel Mack wrote:


AFAIK, this bug is not known, and I haven't seen any such effects yet.
Which program is that?


The program is wspr. It is started whith python and it includes some 
modules in FORTRAN and C.



Can you reproduce the bug?


Yes !


To me, it smells like a memory corruption outside the PulseAudio code,
but that's just guessing. Could you try running the binary in
valgrind? Maybe that shows anything.


I have tried it. You will find attached some extract from the output.

If you want, I can send you the full output.

Thanks for your help, Daniel !

Claude


==4461== HEAP SUMMARY:
==4461== in use at exit: 1,487 bytes in 47 blocks
==4461==   total heap usage: 77 allocs, 30 frees, 10,050 bytes allocated
==4461==
==4461== Searching for pointers to 47 not-freed blocks
==4461== Checked 312,572 bytes
==4461==
==4461== LEAK SUMMARY:
==4461==definitely lost: 0 bytes in 0 blocks
==4461==indirectly lost: 0 bytes in 0 blocks
==4461==  possibly lost: 0 bytes in 0 blocks
==4461==still reachable: 1,487 bytes in 47 blocks
==4461== suppressed: 0 bytes in 0 blocks

==4461== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 21 from 10)
--4461--
--4461-- used_suppression: 21 dl-hack3-cond-1
==4461==
==4461== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 21 from 10)

==4450== Thread 3:
==4450== Invalid write of size 2
==4450==at 0x5691BE: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x56BDE7: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x57536A: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x56AF49: Pa_WriteStream (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x884EA1C: soundout_ (sound.c:134)
==4450==by 0x885691D: tx_ (tx.f90:198)
==4450==by 0x458E98: start_thread (in /lib/libpthread-2.13.so)
==4450==by 0x397D2D: clone (in /lib/libc-2.13.so)
==4450==  Address 0x5f3d712 is 0 bytes after a block of size 8,194 alloc'd
==4450==at 0x400522F: calloc (vg_replace_malloc.c:418)
==4450==by 0x570569: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x575161: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x57533F: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x56AF49: Pa_WriteStream (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x884EA1C: soundout_ (sound.c:134)
==4450==by 0x885691D: tx_ (tx.f90:198)
==4450==by 0x458E98: start_thread (in /lib/libpthread-2.13.so)
==4450==by 0x397D2D: clone (in /lib/libc-2.13.so)
==4450==
==4450== Invalid read of size 1
==4450==at 0x4007CE8: memcpy (mc_replace_strmem.c:602)
==4450==by 0x6BE9328: pa_stream_write (string3.h:52)
==4450==by 0x699BC64: ??? (in 
/usr/lib/alsa-lib/libasound_module_pcm_pulse.so)

==4450==by 0x6B1EB91: ??? (in /lib/libasound.so.2.0.0)
==4450==by 0x6ADB2E7: ??? (in /lib/libasound.so.2.0.0)
==4450==by 0x6B1EF96: ??? (in /lib/libasound.so.2.0.0)
==4450==by 0x6AD3AF4: snd_pcm_writei (in /lib/libasound.so.2.0.0)
==4450==by 0x57043D: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x5709C7: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x57537C: ??? (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x56AF49: Pa_WriteStream (in /usr/lib/libportaudio.so.2.0.0)
==4450==by 0x884EA1C: soundout_ (sound.c:134)
==4450==  Address 0x5f4570f is 1 bytes before a block of size 48 free'd
==4450==at 0x4005B0A: free (vg_replace_malloc.c:325)
==4450==by 0x11F2AD: TclpFree (in /usr/lib/libtcl8.5.so)
==4450==by 0x129E0D: Tcl_Free (in /usr/lib/libtcl8.5.so)
==4450==by 0x1E11DD: TclBN_mp_clear (in /usr/lib/libtcl8.5.so)
==4450==by 0x1E1516: TclBN_mp_div (in /usr/lib/libtcl8.5.so)
==4450==by 0x1C1D2D: ??? (in /usr/lib/libtcl8.5.so)
==4450==by 0x1CE72A: Tcl_PrintDouble (in /usr/lib/libtcl8.5.so)
==4450==by 0x1A7182: ??? (in /usr/lib/libtcl8.5.so)
==4450==by 0x1A7E1E: Tcl_GetString (in /usr/lib/libtcl8.5.so)
==4450==by 0x592CF80: ??? (in /usr/lib/libtk8.5.so)
==4450==by 0x59225B2: ??? (in /usr/lib/libtk8.5.so)
==4450==by 0x125764: ??? (in /usr/lib/libtcl8.5.so)
==4450==

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Please help me to understand this

2011-04-13 Thread Daniel Mack
On Wed, Apr 13, 2011 at 7:15 PM, Claude Frantz
claudefrantzx...@lavabit.com wrote:
 On 04/13/2011 06:32 PM, Daniel Mack wrote:

 AFAIK, this bug is not known, and I haven't seen any such effects yet.
 Which program is that?

 The program is wspr. It is started whith python and it includes some
 modules in FORTRAN and C.

 Can you reproduce the bug?

 Yes !

 To me, it smells like a memory corruption outside the PulseAudio code,
 but that's just guessing. Could you try running the binary in
 valgrind? Maybe that shows anything.

 I have tried it. You will find attached some extract from the output.

The invalid write sounds suspicious. I assume the test binaries from
the PulseAudio source tree work fine for you?

I think you need to put some more efford in debugging this. IOW, go
ahead and build a minimal PortAudio tool and see if it also shows the
bug. Or go the other way around and strip down the program you use and
see if you can get it to the point where it doesn't crash anymore.

Sorry I can't provide more information at this point, but please keep
us posted about anything you find.

Daniel
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] Please help me to understand this

2011-04-13 Thread Claude Frantz

On 04/13/2011 07:40 PM, Daniel Mack wrote:


The invalid write sounds suspicious. I assume the test binaries from
the PulseAudio source tree work fine for you?


I'm using Fedora 14, all available upgrades installed. The version is 
reported as pulseaudio-0.9.21-7.fc14.i686



I think you need to put some more efford in debugging this. IOW, go
ahead and build a minimal PortAudio tool and see if it also shows the
bug.


My knowledge about pulseaudio is too limited.


Or go the other way around and strip down the program you use and
see if you can get it to the point where it doesn't crash anymore.


The same problem here. I do not really understand wspr's structure and 
operating mode.



Sorry I can't provide more information at this point,


Many thanks for your help, anyway.


but please keep
us posted about anything you find.


OK ! I will do it.

Claude

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] rygel mediaserver

2011-04-13 Thread Gunnar Aastrand Grimnes
A tiny bit more detail - I tried running wireshark while trying to play 
the stream, the WDTV asks for the stream:


HEAD /listen/source/alsa_output.pci-_00_06.1.analog-stereo.monitor 
HTTP/1.0\r\n

[...]

And pulseaudio responds:

HTTP/1.0 500 Internal Server Error\n

:)

The body returned contains no more useful info.

Testing the same with curl give the same result:

curl -I 
http://localhost:4714/listen/source/alsa_input.pci-_00_06.1.analog-stereo

HTTP/1.0 500 Internal Server Error
Connection: close
Content-Type: text/html; charset=utf-8
Cache-Control: no-cache
Expires: 0
Server: pulseaudio/0.9.22

Actually HTTP GET'ing the stream with curl works fine.

I made a ticket: http://pulseaudio.org/ticket/933

Cheers!

- Gunnar

On 12/04/11 21:50, Gunnar Aastrand Grimnes wrote:

I think you have to load module-protocol-http as well (not sure I've got
the name totally correct).


That's the one I meant when I said I have also enabled the http-tcp
module, - it's called module-http-protocol-tcp



I tried it with my PS3 but never got very far (it defo did try to talk
to the http module tho')

If you get it working with your WDTV box just by loading http protocol,
please report back and I'll tweak paprefs.


No such luck. Running pa in a console it says:


I: socket-server.c: TCP connection accepted by tcpwrap.
I: client.c: Created 12 HTTP client (TCP/IP client from
192.168.178.99:41994)
I: client.c: Freed 12 HTTP client (TCP/IP client from
192.168.178.99:41994)

immediately, and the WDTV says unable to play the selected file.

With my LG HB405SU there is on such message, but rygel says:

** (rygel:10171): WARNING **: rygel-http-request.vala:91: Invalid seek
request

When I try to play the stream.

Cheers,

- Gunnar
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


[pulseaudio-discuss] [PATCH] pa_poll(): Simplify detectin of invalid fds in select() emulation mode

2011-04-13 Thread Daniel Mack
Attached is a patch to fix for one out of the few problems I still
fight with on OS X.

I'm not sure whether this change breaks Windows support, so I'd be
happy if someone could give it a try.

Thanks,
Daniel


0001-pa_poll-Simplify-detectin-of-invalid-fds-in-select-e.patch
Description: Binary data
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] [PATCH] pa_poll(): Simplify detectin of invalid fds in select() emulation mode

2011-04-13 Thread Maarten Bosmans
2011/4/13 Daniel Mack zon...@gmail.com:
 Attached is a patch to fix for one out of the few problems I still
 fight with on OS X.

 I'm not sure whether this change breaks Windows support, so I'd be
 happy if someone could give it a try.

This is indeed a problem.

return (fd = 0)  (fcntl(fd, F_GETFL) != -1);

For Windows, both fcntl and F_GETFL are not available.

 Thanks,
 Daniel

Maarten
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss