Hi Andrew,

During our talk about how to approach Windows porting where
platform-specific issues arise, the general approach is to reimplement
in the affected qpid/sys subdirectory. That has gone very well, and
patches are forthcoming via JIRA.

There's one issue remaining and I'm not sure how you'd like to handle
this. In qpid/Exception.{h cpp} there's a qpid::strError() function,
often used with exceptions, to look up the message string for an errno
value.

Of course, this is different on Windows. This would lend itself to
reimplementing the strError() function in the posix and windows
subdirectories, but this function is in the qpid namespace, not
qpid::sys. I see two ways to resolve this:

1. Move the function to qpid::sys. I began down this path and have the
broker and client building on Windows and Linux with it, but the test
programs also refer to qpid::strError(). Are users expecting to find a
qpid::strError()?

2. Leave it in qpid, but implement it in qpid/sys/posix and
qpid/sys/windows. This doesn't disrupt existing code, but leaves the
implementation in a "non standard" place.

What do you think the best way to proceed on this is?

Thanks,
-Steve


Reply via email to