[Wine-devel] Eter's patch is applied to winehq repo 09/15/10

builder на builder.office.etersoft.ru builder на builder.office.etersoft.ru
Ср Сен 15 15:20:09 MSD 2010


New patches since last time:
commit e1b9a5c8925d0e453da9f3e1a09a9a1a9ad535f5
Author: Vitaly Perov <vitperov на etersoft.ru>

    winspool.drv: Set the printer name in AddJobW.

commit 3bea7f943e17faef3094c63b76e6556a2af42db0
Author: Alexander Morozov <amorozov на etersoft.ru>

    crypt32: Add stub for CryptSignMessage.

---

commit e1b9a5c8925d0e453da9f3e1a09a9a1a9ad535f5
Author: Vitaly Perov <vitperov на etersoft.ru>
Date:   Mon Sep 13 19:28:56 2010 +0400

    winspool.drv: Set the printer name in AddJobW.

diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c
index 8c6486b..7f6d12c 100644
--- a/dlls/winspool.drv/info.c
+++ b/dlls/winspool.drv/info.c
@@ -99,6 +99,7 @@ typedef struct {
     WCHAR *filename;
     WCHAR *portname;
     WCHAR *document_title;
+    WCHAR *printer_name;
 } job_t;
 
 
@@ -2296,6 +2297,7 @@ BOOL WINAPI AddJobW(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf, LPD
     job->filename = HeapAlloc(GetProcessHeap(), 0, (len + 1) * sizeof(WCHAR));
     memcpy(job->filename, filename, (len + 1) * sizeof(WCHAR));
     job->document_title = strdupW(default_doc_title);
+    job->printer_name = strdupW(printer->name);
     list_add_tail(&printer->queue->jobs, &job->entry);
 
     *pcbNeeded = (len + 1) * sizeof(WCHAR) + sizeof(*addjob);
@@ -7073,6 +7075,20 @@ static BOOL get_job_info_1(job_t *job, JOB_INFO_1W *ji1, LPBYTE buf, DWORD cbBuf
         space = FALSE;
     *pcbNeeded += size;
 
+    if (job->printer_name)
+    {
+        string_to_buf(job->printer_name, ptr, left, &size, unicode);
+        if(space && size <= left)
+        {
+            ji1->pPrinterName = (LPWSTR)ptr;
+            ptr += size;
+            left -= size;
+        }
+        else
+            space = FALSE;
+        *pcbNeeded += size;
+    }
+
     return space;
 }
 
@@ -7104,6 +7120,20 @@ static BOOL get_job_info_2(job_t *job, JOB_INFO_2W *ji2, LPBYTE buf, DWORD cbBuf
         space = FALSE;
     *pcbNeeded += size;
 
+    if (job->printer_name)
+    {
+        string_to_buf(job->printer_name, ptr, left, &size, unicode);
+        if(space && size <= left)
+        {
+            ji2->pPrinterName = (LPWSTR)ptr;
+            ptr += size;
+            left -= size;
+        }
+        else
+            space = FALSE;
+        *pcbNeeded += size;
+    }
+
     return space;
 }
 
@@ -7537,6 +7567,7 @@ BOOL WINAPI ScheduleJob( HANDLE hPrinter, DWORD dwJobID )
         }
         list_remove(cursor);
         HeapFree(GetProcessHeap(), 0, job->document_title);
+        HeapFree(GetProcessHeap(), 0, job->printer_name);
         HeapFree(GetProcessHeap(), 0, job->portname);
         HeapFree(GetProcessHeap(), 0, job->filename);
         HeapFree(GetProcessHeap(), 0, job);

commit 3bea7f943e17faef3094c63b76e6556a2af42db0
Author: Alexander Morozov <amorozov на etersoft.ru>
Date:   Fri Jun 25 15:51:25 2010 +0400

    crypt32: Add stub for CryptSignMessage.

diff --git a/dlls/crypt32/crypt32.spec b/dlls/crypt32/crypt32.spec
index 61e4d3d..f531bf6 100644
--- a/dlls/crypt32/crypt32.spec
+++ b/dlls/crypt32/crypt32.spec
@@ -181,7 +181,7 @@
 @ stub CryptSignAndEncryptMessage
 @ stdcall CryptSignCertificate(long long long ptr long ptr ptr ptr ptr)
 @ stub CryptSignHashU
-@ stub CryptSignMessage
+@ stdcall CryptSignMessage(ptr long long ptr ptr ptr ptr)
 @ stub CryptSignMessageWithKey
 @ stdcall CryptUnprotectData(ptr ptr ptr ptr ptr long ptr)
 @ stdcall CryptUnregisterDefaultOIDFunction(long str wstr)
diff --git a/dlls/crypt32/message.c b/dlls/crypt32/message.c
index f06af0e..81eb913 100644
--- a/dlls/crypt32/message.c
+++ b/dlls/crypt32/message.c
@@ -415,3 +415,12 @@ BOOL WINAPI CryptVerifyMessageHash(PCRYPT_HASH_MESSAGE_PARA pHashPara,
     }
     return ret;
 }
+
+BOOL WINAPI CryptSignMessage(PCRYPT_SIGN_MESSAGE_PARA pSignPara,
+ BOOL fDetachedSignature, DWORD cToBeSigned, const BYTE *rgpbToBeSigned[],
+ DWORD rgcbToBeSigned[], BYTE *pbSignedBlob, DWORD *pcbSignedBlob)
+{
+    FIXME("(%p, %d, %d, %p, %p, %p, %p): stub\n", pSignPara, fDetachedSignature,
+     cToBeSigned, rgpbToBeSigned, rgcbToBeSigned, pbSignedBlob, pcbSignedBlob);
+    return FALSE;
+}


Подробная информация о списке рассылки Wine-devel