Patch , Diff .

Iniciado por fernandovertuoso, 09 de Novembro de 2010, 11:07

tópico anterior - próximo tópico

fernandovertuoso

oi , sou novo no forum, queria saber como criar um patch ou diff porque um jogo aqui no wine
Swat 4 tem um bug que o mouse sai da janela do jogo e eu achei um patch no bugwine lá, e não sei como criar e aplicar o patch pesso ajuda por favor  diff -urN a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
--- a/dlls/winex11.drv/event.c 2010-07-16 19:05:45.000000000 +0400
+++ b/dlls/winex11.drv/event.c 2010-07-17 18:01:43.529655139 +0400
@@ -98,7 +98,7 @@
     { ButtonRelease,    X11DRV_ButtonRelease },
     { MotionNotify,     X11DRV_MotionNotify },
     { EnterNotify,      X11DRV_EnterNotify },
-    /* LeaveNotify */
+    { LeaveNotify,      X11DRV_LeaveNotify },
     { FocusIn,          X11DRV_FocusIn },
     { FocusOut,         X11DRV_FocusOut },
     { KeymapNotify,     X11DRV_KeymapNotify },
diff -urN a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
--- a/dlls/winex11.drv/mouse.c 2010-07-16 19:05:45.000000000 +0400
+++ b/dlls/winex11.drv/mouse.c 2010-07-17 18:41:01.729904882 +0400
@@ -1004,3 +1004,26 @@
     X11DRV_send_mouse_input( hwnd, MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE,
                              pt.x, pt.y, 0, EVENT_x11_time_to_win32_time(event->time), 0, 0 );
}
+
+
+/***********************************************************************
+ *           X11DRV_LeaveNotify
+ */
+void X11DRV_LeaveNotify( HWND hwnd, XEvent *xev )
+{
+    XCrossingEvent *event = &xev->xcrossing;
+    POINT pt;
+
+    struct x11drv_win_data *data;
+
+    if (hwnd && (data = X11DRV_get_win_data( hwnd )))
+    {
+        pt.x = event->x + data->whole_rect.left;
+        pt.y = event->y + data->whole_rect.top;
+
+        clip_point_to_rect( &data->client_rect, &pt );
+
+        X11DRV_send_mouse_input( hwnd, MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE,
+                                 pt.x, pt.y, 0, EVENT_x11_time_to_win32_time(event->time), 0, 0 );
+    }
+}
diff -urN a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
--- a/dlls/winex11.drv/window.c 2010-07-16 19:05:45.000000000 +0400
+++ b/dlls/winex11.drv/window.c 2010-07-17 17:56:01.541654467 +0400
@@ -322,7 +322,7 @@
     attr->win_gravity       = StaticGravity;
     attr->backing_store     = NotUseful;
     attr->event_mask        = (ExposureMask | PointerMotionMask |
-                               ButtonPressMask | ButtonReleaseMask | EnterWindowMask |
+                               ButtonPressMask | ButtonReleaseMask | EnterWindowMask | LeaveWindowMask |
                                KeyPressMask | KeyReleaseMask | FocusChangeMask |
                                KeymapStateMask | StructureNotifyMask);
     if (data->managed) attr->event_mask |= PropertyChangeMask;
diff -urN a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
--- a/dlls/winex11.drv/x11drv.h 2010-07-16 19:05:45.000000000 +0400
+++ b/dlls/winex11.drv/x11drv.h 2010-07-17 17:58:35.797905185 +0400
@@ -700,6 +700,7 @@
extern void X11DRV_ButtonRelease( HWND hwnd, XEvent *event );
extern void X11DRV_MotionNotify( HWND hwnd, XEvent *event );
extern void X11DRV_EnterNotify( HWND hwnd, XEvent *event );
+extern void X11DRV_LeaveNotify( HWND hwnd, XEvent *event );
extern void X11DRV_KeyEvent( HWND hwnd, XEvent *event );
extern void X11DRV_KeymapNotify( HWND hwnd, XEvent *event );
extern void X11DRV_DestroyNotify( HWND hwnd, XEvent *event );
  esse é o patch que preciso copilar fazer seila  obrigado

eliseu_carvalho

Já tentou rodar o mesmo jogo no VirtualBox?

fernandovertuoso

mano eu sou novato ainda, se poder me dizer um tutorial bom pra virtualbox, porque eu ja tenho esse virtualbox,
mais não sei usar, tipo eu crio as coisa e tal o hd e pá mais quando vo entrar no windows não da. precisa do windows instalado? ou só a iso mesmo, se poder me responder isso tudo ai eu agradeço

platao

#3
Ola fernando, o que vc quer dizer?

" tipo eu crio as coisa e tal o hd e pá "

Tente ser mais claro com a sua divida, lembrando que o forum e acessado por pessoas de outras nacionalidades, fique atento as regras;
Da língua

4. Este é um fórum em língua portuguesa. Todos os textos devem ser escritos de forma clara, logo, não são permitidas gírias e abreviações que atrapalhem a leitura dos demais.

Tente uma pesquisa especializada em Linux aqui;

http://www.google.com.br/linux

Abraço

Platao
\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

Tota

Citação de: fernandovertuoso online 09 de Novembro de 2010, 18:13
... se poder me dizer um tutorial bom pra virtualbox...

O melhor tutorial para o virtualbox voce encontra aqui => http://www.virtualbox.org/wiki/Documentation

Baixe e leia o guia foca Linux disponivel gratuitamente na rede.
CitarPatch

Atualiza arquivos à partir de um arquivo diff

comandos: patch -p0 < nome_do_arquivo >

Geralmente o autor do patch dá explicações de instalação

[]'s

fernandovertuoso

oque eu quis dizer ai "criar e pá " é o seguinte tu vai la pra criar o sistema entende, escole lá winxp , dai na hora de dar o boot ele não da fica uma tela preta, mais queria saber se precisa instalar o windows ou usar uma iso :x

e o carinha falando do commando "patch" eu sei disso mais quero criar um patch para depois aplicar. obrigado

libonati

Comando diff e comando patch no
Focalinux, pag 149.

fernandovertuoso

cara, não custa responder aqui? meu deus fica enfiando nas costas de outros sites que derma é essa de focalinux? lol posta aqui , que derma! :-X

clcampos

Citação de: fernandovertuoso online 10 de Novembro de 2010, 10:25
cara, não custa responder aqui? meu deus fica enfiando nas costas de outros sites que derma é essa de focalinux? lol posta aqui , que derma! :-X

Qual a dificuldade de acessar o focalinux nas páginas indicadas?

Será que o pessoal tem que fazer tudo por você? Entenda que ninguém aqui esta recebendo para ajudá-lo, que somos voluntários. Se quer tudo na mão existem boas opções de suporte pago.

focalinux é um excelente site com conteúdo para linux, tanto para iniciantes até os mais experientes.

A sim, educação é a alma do negócio. Respeite os usuários e será também respeitado, veja como trata os usuários do fórum.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

fernandovertuoso

#9
ta reconheço que fiquei nervoso  me desculpa, poderia postar o link da pagina 149 por favor?

Sky_Walker

Citação de: fernandovertuoso online 09 de Novembro de 2010, 20:21
oque eu quis dizer ai "criar e pá " é o seguinte tu vai la pra criar o sistema entende, escole lá winxp , dai na hora de dar o boot ele não da fica uma tela preta, mais queria saber se precisa instalar o windows ou usar uma iso :x

e o carinha falando do commando "patch" eu sei disso mais quero criar um patch para depois aplicar. obrigado

Aquela tela preta seria a mesma quando damos o boot com cd do windows, e sim você tem que instalar o windows.
UBUNTU 10.10 - QUE A FORÇA ESTEJA COM VOCÊ.

libonati


platao

Ola, na minha assinatura ai em baixo, ha o link para o Guia da Foca e so baixar e consultar a pagina recomendada, e melhor se acostumar com o Linux, alguns problemas so sao resolvidos com muita leitura e paciencia.
\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997

Warhead

Saudaçoes.
Não sou expert em programação, mas normalmente se consegue boas informações com as pessoas que postam o patch ou diff. Em geral o texto explicativo fica na mesma pagina dos programas.
Em relação ao virtual box, a coisa funciona da seguinte forma:
-você cria um hd e decide quanto de memória ram e de vídeo vai ser dedicada à máquina virtual.
-na sequencia deve-se fazer uma instalação padrão do sistema escolhido, sim, exatamente como se fosse instalar um sistema operacional em um computador novo.
-depois o sistema hospedeiro, aquele que abriga o convidado, vai poder ser usado em concomitância e ao mesmo tempo em que se opera o recém instalado S.O.
-existe a possibilidade de usar um complemento chamado adicionais para convidado, que pode ser encontrado na aba superior da janela do virtual box, isto lhe permite usufruir de mais capacidades e benefícios do sistema instalado como convidado. Apenas atente que este adicionais para convidado será instalado apenas no convidado.
-como exemplo, posso citar os sistemas que eu virtualizo aqui: freebsd, windows7, windowsxp, ubuntu(várias versões), opensolaris....
-mais um lembrete: os jogos que necessitam de muito poder de processamento ou de muita aceleração de vídeo, não devem ter bom desempenho, pois existem limitações nas máquinas virtuais. De qualquer forma, não custa tentar.
Espero ter sido útil.
Boa sorte.
Você será tudo aquilo que acreditar ser.

Sky_Walker

UBUNTU 10.10 - QUE A FORÇA ESTEJA COM VOCÊ.