On 2015-08-22 13:16, bfreisen(a)svn.reactos.org wrote:
> [HHPCOMP]
> Improve functionality of Windows MSVC build. Based on a WIP patch by Michael Fritscher.
> See CORE-10019.
> +/* if O_BINARY is not defined, the system is probably not expecting any such flag */
> +#ifndef O_BINARY
> +#define O_BINARY 0
> +#endif
> - chm->fd = creat(filename, 0644);
> + chm->fd = open(filename, O_RDWR | O_CREAT | O_TRUNC | O_BINARY, 0644);
Hmm... fopen wouldn't have this problem ;)
On 2015-08-18 14:26, hbelusca(a)svn.reactos.org wrote:
> [NTVDM]: Initialize the PSP' memory control block owner name with the file name (without extension, and up to 8 chars) of the started program.
Shouldn't that use GetShortPathName to make sure the program can find
itself on disk? :p
Hi all,
First of all, let me thank everybody who could make it to Aachen for
Hackfest! Thanks also go to all the others on IRC, Twitter, etc. who
supported us during that time!
It was a pleasure to have you all here and simply a great week! :)
Now let's spread the word even more, so that everyone can get an idea of
our Hackfest:
Hackfest report
===============
Aleksey suggested (and volunteered!) to write a report about our
Hackfest for the website. He wants someone to help him though.
Victor, as you did a pretty great job at live streaming every day, would
you help Aleksey here?
If there are other volunteers, just raise your voice :)
Photos
======
I've created a folder "ReactOS Hackfest 2015" in the "Developers" file
section on IServ. You already find all my photos there (among them,
first group photos from Saturday).
Please share your photos as well, either by uploading through the
website or through SFTP (WinSCP is a great tool for this).
If you're not in the "Developers" section, but participated in the
Hackfest, please tell either Christoph, Pierre or me and we will add you.
Cheers,
Colin
Just wonder why no one has yet fixed the compiling errors you get if you
use visual studio.
All the errors are not code related but linking problem, so I wonder why no
body solve all the compiler errors.
Thanks,
Alberto Vaudagna
Hi everyone,
Some of you probably remember me. I was involved with trying to get
audio/sound implemented in ReactOS a few years ago.
To be honest, my progress was rather poor, I managed to write a few bits of
code but never really had a proper understanding of kernel/OS development or
CPU/system architectures. Additionally, whilst I could grasp how the
multimedia APIs (MME) in NT4 worked, and how they interacted with the
drivers (audio device X opens device Y and writes buffered data to it) for
Windows 2000 and later, Kernel Streaming was used which partly built on top
of the older implementation but added a load of new stuff.
This complicated matters as firstly, KS uses COM (which I still struggle to
wrap my head around) in kernel-mode, secondly there were multiple components
involved between the application and the hardware (wdmaud.drv -> wdmaud.sys
-> ks.sys -> portcls.sys -> driver as far as I remember), and finally I
really struggled to find example code and thorough documentation describing
how it all worked.
Ultimately I gave up with that and intended to move to another platform to
develop multimedia applications. Not much happened with that.
I remember there were complaints from application developers over Kernel
Streaming offering poor latency - instead developers would turn to other
technologies such as ASIO or DirectSound. So for recent versions of Windows
(Vista onwards?) Microsoft implemented a new, user-mode sound system
(WASAPI) which again uses COM but is pretty nicely documented, with code
samples.
Having done a little reading about this, it renewed my interest. It still
uses COM, and KS.SYS is still present (I assume for compatibility?) but as a
lot of this is implemented in user-space I suspect it'd be easier to
develop/test.
Aside from this, over the past few years I've also gained a better
understanding of topics I didn't know much about previously and I feel more
confident at being able to write lower-level stuff that works properly. I've
also developed more of a keen interest in how Windows works.
So basically I'm considering implementing the current Windows audio system
in ReactOS. I'd imagine we don't need to be too concerned about audio
drivers themselves (at least, initially) as vendors tend to offer these and
it's not like we need sound immediately post-install!
The only thing I really lack now is knowledge of how to implement COM
classes - at least, outside of using Visual Studio. Anyone got recommended
reading or example code for this?
Andrew
This patch, as it, is really dangerous. MS allows null pointer in its
Read/Write routines, but they are wrapped inside a SEH block, to prevent
nasty things to happen in case of a null pointer dereference.
Here we don't, meaning that a null pointer here will cause major damages.
Furthermore, your commit regressed ntdll:file:
https://reactos.org/sites/all/modules/reactos/testman/compare.php?ids=40042…
Regards,
On 08/07/2015 05:30 AM, aandrejevic(a)svn.reactos.org wrote:
> Author: aandrejevic
> Date: Fri Aug 7 03:30:05 2015
> New Revision: 68607
>
> URL: http://svn.reactos.org/svn/reactos?rev=68607&view=rev
> Log:
> [FASTFAT]
> Irp->UserBuffer being NULL doesn't indicate any error. It could be that the
> caller really wants the result stored at address NULL (which can be valid,
> and is valid by default for programs like NTVDM).
>
>
> Modified:
> trunk/reactos/drivers/filesystems/fastfat/rw.c
>
> Modified: trunk/reactos/drivers/filesystems/fastfat/rw.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfa…
> ==============================================================================
> --- trunk/reactos/drivers/filesystems/fastfat/rw.c [iso-8859-1] (original)
> +++ trunk/reactos/drivers/filesystems/fastfat/rw.c [iso-8859-1] Fri Aug 7 03:30:05 2015
> @@ -656,7 +656,7 @@
> }
>
> Buffer = VfatGetUserBuffer(IrpContext->Irp, BooleanFlagOn(IrpContext->Irp->Flags, IRP_PAGING_IO));
> - if (!Buffer)
> + if (!Buffer && IrpContext->Irp->MdlAddress)
> {
> Status = STATUS_INVALID_USER_BUFFER;
> goto ByeBye;
> @@ -927,7 +927,7 @@
> OldFileSize = Fcb->RFCB.FileSize;
>
> Buffer = VfatGetUserBuffer(IrpContext->Irp, BooleanFlagOn(IrpContext->Irp->Flags, IRP_PAGING_IO));
> - if (!Buffer)
> + if (!Buffer && IrpContext->Irp->MdlAddress)
> {
> Status = STATUS_INVALID_USER_BUFFER;
> goto ByeBye;
>
>
--
Pierre Schweitzer <pierre(a)reactos.org>
System & Network Administrator
Senior Kernel Developer
ReactOS Deutschland e.V.