homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: mingw: detect REPARSE_DATA_BUFFER
Type: enhancement Stage: resolved
Components: Build, Windows Versions: Python 3.6
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: eryksun, martin.panter, paul.moore, python-dev, rpetrov, steve.dower, tim.golden, zach.ware
Priority: normal Keywords: patch

Created on 2013年03月31日 19:59 by rpetrov, last changed 2022年04月11日 14:57 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
0010-MINGW-detect-REPARSE_DATA_BUFFER.patch rpetrov, 2013年03月31日 19:59
0009-MINGW-detect-REPARSE_DATA_BUFFER.patch rpetrov, 2014年08月03日 06:13 status on 2014年08月02日
Py_REPARSE.patch martin.panter, 2016年07月27日 04:18 review
Py_REPARSE.v2.patch martin.panter, 2016年07月29日 04:28 review
Messages (9)
msg185660 - (view) Author: Roumen Petrov (rpetrov) * Date: 2013年03月31日 19:59
split of issue3871.
msg266050 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2016年05月22日 05:15
Would it be better to define all the things in "winreparse.h" with names that are less likely to conflict, say Py_REPARSE_DATA_BUFFER etc? This would be a more general way to avoid conflicts, and also avoid hacking the configure script.
Also, is the "#ifndef MAXIMUM_REPARSE_DATA_BUFFER_SIZE" condition necessary?
msg271432 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2016年07月27日 04:18
Here is a patch implementing my suggestion to unconditionally define everything, prefixed with Py_ instead. Not tested on a normal Windows build.
msg271449 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2016年07月27日 13:42
Worth checking if the headers in VC14 have the structure now, as it may simplify the whole thing.
If not, I'd add a leading underscore to the name so nobody confuses it for public API in the future.
msg271602 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2016年07月29日 04:28
Leading underscore is a good idea.
I have no idea if VC14 includes the structure, but I suspect if it was added with this name, we would know because it would cause the same conflict that Min GW caused.
msg271605 - (view) Author: Eryk Sun (eryksun) * (Python triager) Date: 2016年07月29日 05:46
REPARSE_DATA_BUFFER is defined in the WDK filesystem header, km\ntifs.h. It's not defined in the user-mode SDK.
msg271632 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2016年07月29日 14:54
I think the WDK is still separate from the Windows SDK, so probably best to keep the custom definition with a comment specifying which file it came from (so whoever diagnoses an obscure issue in the future can find it quickly).
With the comment, I'm fine with the patch. If you haven't built on MSVC then keep an eye on the build bots until it goes through in case something unpredictable happens.
msg271941 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2016年08月04日 03:03
New changeset e4ddfa61199c by Martin Panter in branch 'default':
Issue #17599: Use unique _Py_REPARSE_DATA_BUFFER etc names to avoid conflict
https://hg.python.org/cpython/rev/e4ddfa61199c 
msg271957 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2016年08月04日 08:33
Thanks for your feedback. I add a reference to km\ntifs.h in the comment. The buildbots seem generally happy with the change. (One timed out in the tests, but that seems to be an existing intermittent problem.)
History
Date User Action Args
2022年04月11日 14:57:43adminsetgithub: 61799
2016年08月04日 08:33:14martin.pantersetstatus: open -> closed
resolution: fixed
messages: + msg271957

stage: patch review -> resolved
2016年08月04日 03:03:46python-devsetnosy: + python-dev
messages: + msg271941
2016年07月29日 14:54:41steve.dowersetmessages: + msg271632
2016年07月29日 05:46:55eryksunsetnosy: + eryksun
messages: + msg271605
2016年07月29日 04:28:40martin.pantersetfiles: + Py_REPARSE.v2.patch

messages: + msg271602
2016年07月27日 13:42:00steve.dowersetmessages: + msg271449
2016年07月27日 04:18:24martin.pantersetfiles: + Py_REPARSE.patch

messages: + msg271432
versions: + Python 3.6, - Python 3.4
2016年05月22日 05:15:20martin.pantersetnosy: + paul.moore, tim.golden, martin.panter, zach.ware, steve.dower
messages: + msg266050

components: + Windows, - Cross-Build
stage: patch review
2016年03月19日 08:27:52martin.panterlinkissue17605 dependencies
2014年08月03日 06:13:17rpetrovsetfiles: + 0009-MINGW-detect-REPARSE_DATA_BUFFER.patch
2013年03月31日 19:59:37rpetrovcreate

AltStyle によって変換されたページ (->オリジナル) /