Hi all,
In order to make our ISOs flashable to USB drives and bootable from them
(cf. CORE-12648), I'm currently overhauling our ISO boot sector
"isoboot.S". This adds a lot of code and while I stay in the 2K size
limit when assembling it with GAS, I break it with MASM.
Disassembling the assembled files shows the difference.
A line like:
mov word ptr ds:[GetlinsecPtr], ax
is assembled by GAS to:
A35B50 mov [0x505b],ax
while MASM does this:
67A35B500000 mov [dword 0x505b],ax
Is there any option to enforce the shorter opcode sequence for MASM too?
The code uses a lot of similar MOVs and this seems to be the only reason
why I break the 2K size limit with MASM.
If there is no such option, what are the advantages of using MASM for
our MSVC build anyway? Can't we just use GAS for both or decide on a
common third-party assembler (NASM) for our assembly files?
Cheers,
Colin
Hello Aleksey,
About readiness to get merged I think decision should be done by Thomas or Amine.
Related to collaboration with ROS, as I have informed on one of the monthly meetings, I have willing to contribute ReactOS. But for now I have probelm with time which is depend on many factors. We can schedule meeting in IRC or wherever you want, to discuss how I can help to our project.
Thanks,Vardan.
Sent from my Samsung Galaxy smartphone.
-------- Original message --------From: Aleksey Bragin <aleksey(a)reactos.org> Date: 12/20/16 03:00 (GMT+04:00) To: ReactOS Development List <ros-dev(a)reactos.org> Subject: [ros-dev] USB from GSoC
Hello!
What happened to the USB branch made by Vardan during GSoC 2016? Is it
ready to be merged, or if not, what's holding it? Any input is
appreciated, especially from Vardan himself.
Regards,
Aleksey Bragin
_______________________________________________
Ros-dev mailing list
Ros-dev(a)reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev
Hello and happy new year,
soon the deadline for CLT 2017 is here (07.01.) and that time I'd like
to add the needed minimum of two ppl there BEFORE that. So... who will
join me to https://chemnitzer.linux-tage.de aka 11./12.03.2017 in
Chemnitz? The sooner I know it the better it is for planning ^^ (Quite
shocking that it's almost a year again since list years CLT...) I am
open for anyone asking to take part, BUT I would prefer guys who already
were there and know what they will have to expect regarding masses of
ppl, strange guys going on your nerves on a 15 min basis and of couse
the fun we will have, too. So pleaase answer ASAP.
I will join IRC today, too. So if anyone has some nice recent pics of
milestones running in ROS, GIMME plz ^^
Greetings
Daniel
During Christmas, I have to leave the AHK bot room free of machine noise at my place.
The bot is officially on vacation until Dec 27-28th :-)
Happy Christmas,
Sylvain Petreolle
Hello!
What happened to the USB branch made by Vardan during GSoC 2016? Is it
ready to be merged, or if not, what's holding it? Any input is
appreciated, especially from Vardan himself.
Regards,
Aleksey Bragin
On 2016-12-07 01:10, gadamopoulos(a)svn.reactos.org wrote:
> [SHELL32] - Initialize the shell icon cache only when needed or when FileIconInit is called (and not in the DllMain of shell32)
> --- trunk/reactos/dll/win32/shell32/iconcache.cpp [iso-8859-1] (original)
> +++ trunk/reactos/dll/win32/shell32/iconcache.cpp [iso-8859-1] Wed Dec 7 00:10:43 2016
> @@ -453,6 +453,9 @@
> sice.dwSourceIndex = dwSourceIndex;
> sice.dwFlags = dwFlags;
>
> + if (!sic_hdpa)
> + SIC_Initialize();
> +
> EnterCriticalSection(&SHELL32_SicCS);
>
> if (NULL != DPA_GetPtr (sic_hdpa, 0))
> @@ -687,6 +690,9 @@
> RegCloseKey(hKeyShellIcons);
> }
>
> + if (!sic_hdpa)
> + SIC_Initialize();
> +
> return SIC_LoadIcon(iconPath, iconIdx, 0);
> }
>
This is great. Unfortunately now you have a race condition if multiple
of these functions get called concurrently.
This leaks if ImpersonateLoggedOnUser fails and the environment block is non-null
-----Original Message-----
From: Ros-diffs [mailto:ros-diffs-bounces@reactos.org] On Behalf Of ekohl(a)svn.reactos.org
Sent: 06 December 2016 17:30
To: ros-diffs(a)reactos.org
Subject: [ros-diffs] [ekohl] 73433: [SERVICES] Create a new environment block when a service process is started. Patch by Hermès BÉLUSCA - MAÏTO. CORE-12414
+ if (Service->lpImage->hToken)
+ {
+ /* User token: Run the service under the user account */
+
+ if (!CreateEnvironmentBlock(&lpEnvironment, Service->lpImage->hToken, FALSE))
+ {
+ /* We failed, run the service with the current environment */
+ DPRINT1("CreateEnvironmentBlock() failed with error %d, service '%S' will run with the current environment.\n",
+ Service->lpServiceName, GetLastError());
+ lpEnvironment = NULL;
+ }
+
+ /* Impersonate the new user */
+ if (!ImpersonateLoggedOnUser(Service->lpImage->hToken))
+ {
+ dwError = GetLastError();
+ DPRINT1("ImpersonateLoggedOnUser() failed with error %d\n", GetLastError());
+ return dwError;
+ }