sicily

2012-10-14 Thread Natalia
ABC Widgets

Enjoy PTS-SICILIA for your transfers in Sicilia.QUALITY-COURTESY-ADVANTAGE
for one click!www.pts-sicilia.com



Для трансферов по Сицилии - ваш выбор
PTS-SICILIA!Качественно, безукоризненно,
выгодно - за один клик!www.pts-sicilia.com

Tel. +39 0942.630080 - Fax +39 0942.630503 - i...@pts-sicilia.com

[demime 1.01d removed an attachment of type image/png which had a name of 1.png]

[demime 1.01d removed an attachment of type image/jpeg which had a name of 
2.jpg]



Re: Scheduler improvements, take 1001, Patch 2/5

2012-10-14 Thread David Coppa
On Tue, Oct 9, 2012 at 6:21 PM, Gregor Best g...@ring0.de wrote:
 This patch simply halves the timeslice processes get until they are
 preempted. This patch is standalone and the rest of the patches does not
 depend on it, but I figured I'd throw it in anyway.

 --
 Gregor Best


Didn't get this patch. Is it me or the patch is missing?



Re: Scheduler improvements, take 1001, Patch 2/5

2012-10-14 Thread Gregor Best
On Sun, Oct 14, 2012 at 11:05:36AM +0200, David Coppa wrote:
 On Tue, Oct 9, 2012 at 6:21 PM, Gregor Best g...@ring0.de wrote:
  This patch simply halves the timeslice processes get until they are
  preempted. This patch is standalone and the rest of the patches does not
  depend on it, but I figured I'd throw it in anyway.
 
  --
  Gregor Best
 
 
 Didn't get this patch. Is it me or the patch is missing?
 

The patch was the message my mail was in reply to. There's no Patch 2/5
subject line because I forgot to change that after sending out Patch
1/5.

-- 
Gregor Best



Re: Scheduler improvements, take 1001, Patch 2/5

2012-10-14 Thread Bob Beck
Gregor you would perhaps get better feedback if it were easier to discern
where your patches are and what each one is doing.  If you can't be
inclined to keep the subjects matching the diffs and are sending stuff out
with subjects like scheduler improvement diff X instead of something like
reduce time slice length by 50% it makes it a lot more effort for someone
to read and test.
On Oct 14, 2012 9:01 AM, Gregor Best g...@ring0.de wrote:

 On Sun, Oct 14, 2012 at 11:05:36AM +0200, David Coppa wrote:
  On Tue, Oct 9, 2012 at 6:21 PM, Gregor Best g...@ring0.de wrote:
   This patch simply halves the timeslice processes get until they are
   preempted. This patch is standalone and the rest of the patches does
 not
   depend on it, but I figured I'd throw it in anyway.
  
   --
   Gregor Best
  
 
  Didn't get this patch. Is it me or the patch is missing?
 

 The patch was the message my mail was in reply to. There's no Patch 2/5
 subject line because I forgot to change that after sending out Patch
 1/5.

 --
 Gregor Best



smaller make patch, to test p107

2012-10-14 Thread Marc Espie
millert@ already saw all of this.
This solves a few minor/major problems.

- Theo wants no blank line at end of ^C error messages.  This blank line
actually comes from the shell/tty, so we have to refrain printing out the
last \n in that situation.

- make sure errors go thru handle_all_signals(), so that signals are handled
properly.


1/- We have outgrown Buf_KillTrailingSpaces. More importantly, this fixes some
posix compliance bug, since spaces at end of variable assignments are NOT
supposed to get stripped.
So far, one non-compliant Makefile got fixed in xenocara. src seems very happy
with this. Basically, this means that for POSIX;
A = some value # and some comment

Then A will be set to exactly 'some value '.
(spaces around the = sign get stripped, but spaces before a comment DON'T)

- compat mode should expand .USE right away. It can never be an aliased target.
And accordingly, this turns into a straight switch() right away

2/- fix the cond parser to actually LOOK for its special keywords instead
of blindly ignoring other stuff (this is the cause of .if existS fix in cc,
btw). Use isspace more consistently while there...

- make parse/cond error messages look MORE like the new regular error message.
This can be tweaked some more if necessary.

- zap an extra cond error message that's not needed since the .if/.endif parser
is verbose enough.

- remove some MORE verbosity that's not needed.

- unclosed var specs in varmodifiers should be treated the same as the common
one.

(there are some other Errors in varmodifiers that may or may not need to
be turned into errors, but this can wait).


Out of this, I'd like feedback on the improved messages, and most importantly
TESTS about the more bitchy cond parser and posix compliant general parser.

Note that this can easily be cut into a few easy to read, independent patches.
But I'm mostly interested in ppl running all of that and reporting problems.

If any problems, I expect they will come from 1/ and 2/ mostly.


Index: buf.c
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/buf.c,v
retrieving revision 1.24
diff -u -p -r1.24 buf.c
--- buf.c   21 Sep 2012 07:55:20 -  1.24
+++ buf.c   13 Oct 2012 14:22:50 -
@@ -161,13 +161,3 @@ Buf_Init(Buffer bp, size_t size)
bp-inPtr = bp-endPtr = bp-buffer = emalloc(size);
bp-endPtr += size;
 }
-
-void
-Buf_KillTrailingSpaces(Buffer bp)
-{
-   while (bp-inPtr  bp-buffer + 1  isspace(bp-inPtr[-1])) {
-   if (bp-inPtr[-2] == '\\')
-   break;
-   bp-inPtr--;
-   }
-}
Index: buf.h
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/buf.h,v
retrieving revision 1.21
diff -u -p -r1.21 buf.h
--- buf.h   2 Oct 2012 10:29:30 -   1.21
+++ buf.h   13 Oct 2012 14:22:55 -
@@ -131,10 +131,6 @@ do {   \
  * Adds characters between s and e to buffer.  */
 #define Buf_Addi(b, s, e)  Buf_AddChars((b), (e) - (s), (s))
 
-/* Buf_KillTrailingSpaces(buf);
- * Removes non-backslashed spaces at the end of a buffer. */
-extern void Buf_KillTrailingSpaces(Buffer);
-
 extern void Buf_printf(Buffer, const char *, ...);
 #define Buf_puts(b, s) Buf_AddChars((b), strlen(s), (s))
 
Index: compat.c
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/compat.c,v
retrieving revision 1.77
diff -u -p -r1.77 compat.c
--- compat.c21 Sep 2012 07:55:20 -  1.77
+++ compat.c14 Oct 2012 15:15:21 -
@@ -86,6 +86,12 @@ CompatMake(void *gnp,/* The node to mak
 */
if (gn == pgn)
return;
+   /* handle .USE right away */
+   if (gn-type  OP_USE) {
+   Make_HandleUse(gn, pgn);
+   return;
+   }
+
look_harder_for_target(gn);
 
if (pgn != NULL  is_sibling(gn, pgn))
@@ -103,9 +109,8 @@ CompatMake(void *gnp,   /* The node to mak
} while (sib != gn);
}
 
-   if (gn-type  OP_USE) {
-   Make_HandleUse(gn, pgn);
-   } else if (gn-built_status == UNKNOWN) {
+   switch(gn-built_status) {
+   case UNKNOWN: 
/* First mark ourselves to be made, then apply whatever
 * transformations the suffix module thinks are necessary.
 * Once that's done, we can descend and make all our children.
@@ -232,30 +237,29 @@ CompatMake(void *gnp, /* The node to mak
print_errors();
exit(1);
}
-   } else if (gn-built_status == ERROR)
+   break;
+   case ERROR:
/* Already had an error when making this beastie. Tell the
 * parent to abort.  */
pgn-must_make = false;
-   else {
-   switch (gn-built_status) {

p108 Re: smaller make patch, to test p107

2012-10-14 Thread Marc Espie
On Sun, Oct 14, 2012 at 06:49:34PM +0200, Marc Espie wrote:
 millert@ already saw all of this.
 This solves a few minor/major problems.
 
 - Theo wants no blank line at end of ^C error messages.  This blank line
 actually comes from the shell/tty, so we have to refrain printing out the
 last \n in that situation.

This part was confusing. Put on hold for now.

 - make sure errors go thru handle_all_signals(), so that signals are handled
 properly.

Implied by posix, so keep.

The rest doesn't change, new patch follows (smaller actually)

 
 1/- We have outgrown Buf_KillTrailingSpaces. More importantly, this fixes some
 posix compliance bug, since spaces at end of variable assignments are NOT
 supposed to get stripped.
 So far, one non-compliant Makefile got fixed in xenocara. src seems very happy
 with this. Basically, this means that for POSIX;
 A = some value # and some comment
 
 Then A will be set to exactly 'some value '.
 (spaces around the = sign get stripped, but spaces before a comment DON'T)
 
 - compat mode should expand .USE right away. It can never be an aliased 
 target.
 And accordingly, this turns into a straight switch() right away
 
 2/- fix the cond parser to actually LOOK for its special keywords instead
 of blindly ignoring other stuff (this is the cause of .if existS fix in cc,
 btw). Use isspace more consistently while there...
 
 - make parse/cond error messages look MORE like the new regular error message.
 This can be tweaked some more if necessary.
 
 - zap an extra cond error message that's not needed since the .if/.endif 
 parser
 is verbose enough.
 
 - remove some MORE verbosity that's not needed.
 
 - unclosed var specs in varmodifiers should be treated the same as the common
 one.
 
 (there are some other Errors in varmodifiers that may or may not need to
 be turned into errors, but this can wait).
 
 
 Out of this, I'd like feedback on the improved messages, and most importantly
 TESTS about the more bitchy cond parser and posix compliant general parser.
 
 Note that this can easily be cut into a few easy to read, independent patches.
 But I'm mostly interested in ppl running all of that and reporting problems.
 
 If any problems, I expect they will come from 1/ and 2/ mostly.

Index: buf.c
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/buf.c,v
retrieving revision 1.24
diff -u -p -r1.24 buf.c
--- buf.c   21 Sep 2012 07:55:20 -  1.24
+++ buf.c   13 Oct 2012 14:22:50 -
@@ -161,13 +161,3 @@ Buf_Init(Buffer bp, size_t size)
bp-inPtr = bp-endPtr = bp-buffer = emalloc(size);
bp-endPtr += size;
 }
-
-void
-Buf_KillTrailingSpaces(Buffer bp)
-{
-   while (bp-inPtr  bp-buffer + 1  isspace(bp-inPtr[-1])) {
-   if (bp-inPtr[-2] == '\\')
-   break;
-   bp-inPtr--;
-   }
-}
Index: buf.h
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/buf.h,v
retrieving revision 1.21
diff -u -p -r1.21 buf.h
--- buf.h   2 Oct 2012 10:29:30 -   1.21
+++ buf.h   13 Oct 2012 14:22:55 -
@@ -131,10 +131,6 @@ do {   \
  * Adds characters between s and e to buffer.  */
 #define Buf_Addi(b, s, e)  Buf_AddChars((b), (e) - (s), (s))
 
-/* Buf_KillTrailingSpaces(buf);
- * Removes non-backslashed spaces at the end of a buffer. */
-extern void Buf_KillTrailingSpaces(Buffer);
-
 extern void Buf_printf(Buffer, const char *, ...);
 #define Buf_puts(b, s) Buf_AddChars((b), strlen(s), (s))
 
Index: compat.c
===
RCS file: /home/openbsd/cvs/src/usr.bin/make/compat.c,v
retrieving revision 1.77
diff -u -p -r1.77 compat.c
--- compat.c21 Sep 2012 07:55:20 -  1.77
+++ compat.c14 Oct 2012 15:15:21 -
@@ -86,6 +86,12 @@ CompatMake(void *gnp,/* The node to mak
 */
if (gn == pgn)
return;
+   /* handle .USE right away */
+   if (gn-type  OP_USE) {
+   Make_HandleUse(gn, pgn);
+   return;
+   }
+
look_harder_for_target(gn);
 
if (pgn != NULL  is_sibling(gn, pgn))
@@ -103,9 +109,8 @@ CompatMake(void *gnp,   /* The node to mak
} while (sib != gn);
}
 
-   if (gn-type  OP_USE) {
-   Make_HandleUse(gn, pgn);
-   } else if (gn-built_status == UNKNOWN) {
+   switch(gn-built_status) {
+   case UNKNOWN: 
/* First mark ourselves to be made, then apply whatever
 * transformations the suffix module thinks are necessary.
 * Once that's done, we can descend and make all our children.
@@ -232,30 +237,29 @@ CompatMake(void *gnp, /* The node to mak
print_errors();
exit(1);
}
-   } else if (gn-built_status == ERROR)
+ 

¡SE BUSCAN LÍDERES!

2012-10-14 Thread Aurelio Fernandez
Una Oportunidad que no te recomendamos que dejes pasar.

¡La Próxima gran Red de
Ganancias para TODOS!  

  * Oportunidad Online de Ingreso Global.

  * ¡Disponible en 130 Paises!

  * 10 Productos de Comunicación por Video de Proxima Generación que
tienen emocionantes beneficios Personales y de Negocios.

  * ¡Primera y Única Empresa en el Mundo Entero que te paga TODAS tus
Comisiones al INSTANTE!

¡SE BUSCAN LÍDERES!Conviértete en uno de los Pioneros en tu Ciudad y
País.

Requisitos para pertenecer
a nuestro Equipo:  

  * Tener Experiencia en la Industria de la Venta Directa o Multinivel.

  * Tener una capacidad de Inversión.

  * Tener una cuenta en Skype.

Únete a Nosotros Hoy, Una Oportunidad que NO te puedes perder.

[demime 1.01d removed an attachment of type image/jpeg which had a name of 
click1.jpg]



Re: mg: prompt for revert on dirty buffer

2012-10-14 Thread Florian Obser
Updated diff, on pressing the wrong key the prompt should be 
Please answer y, n or r.
pointed out by lum@, thanks!

diff --git buffer.c buffer.c
index 60076bb..6bce870 100644
--- buffer.c
+++ buffer.c
@@ -856,11 +856,18 @@ checkdirty(struct buffer *bp)
bp-b_flag |= BFDIRTY;
 
if ((bp-b_flag  (BFDIRTY | BFIGNDIRTY)) == BFDIRTY) {
-   if ((s = eyorn(File changed on disk; really edit the buffer))
-   != TRUE)
+   s = eynorr(File changed on disk; really edit the buffer);
+   switch (s) {
+   case TRUE:
+   bp-b_flag = ~BFDIRTY;
+   bp-b_flag |= BFIGNDIRTY;
+   return (TRUE);
+   case REVERT:
+   dorevert();
+   return (FALSE);
+   default:
return (s);
-   bp-b_flag = ~BFDIRTY;
-   bp-b_flag |= BFIGNDIRTY;
+   }
}
 
return (TRUE);
@@ -873,10 +880,8 @@ checkdirty(struct buffer *bp)
 int
 revertbuffer(int f, int n)
 {
-   struct mgwin *wp = wheadp;
-   struct buffer *bp = wp-w_bufp;
+   struct buffer *bp = wheadp-w_bufp;
char fbuf[NFILEN + 32];
-   int lineno;
 
if (bp-b_fname[0] == 0) {
ewprintf(Cannot revert buffer not associated with any files.);
@@ -885,26 +890,36 @@ revertbuffer(int f, int n)
 
snprintf(fbuf, sizeof(fbuf), Revert buffer from file %s, bp-b_fname);
 
-   if (eyorn(fbuf)) {
-   if (access(bp-b_fname, F_OK|R_OK) != 0) {
-   if (errno == ENOENT)
-   ewprintf(File %s no longer exists!,
-   bp-b_fname);
-   else
-   ewprintf(File %s is no longer readable!,
-   bp-b_fname);
-   return (FALSE);
-   }
+   if (eyorn(fbuf))
+   return dorevert();
 
-   /* Save our current line, so we can go back after reloading. */
-   lineno = wp-w_dotline;
+   return (FALSE);
+}
 
-   /* Prevent readin from asking if we want to kill the buffer. */
-   curbp-b_flag = ~BFCHG;
+int
+dorevert()
+{
+   struct mgwin *wp = wheadp;
+   struct buffer *bp = wp-w_bufp;
+   int lineno;
 
-   if (readin(bp-b_fname))
-   return(setlineno(lineno));
+   if (access(bp-b_fname, F_OK|R_OK) != 0) {
+   if (errno == ENOENT)
+   ewprintf(File %s no longer exists!,
+   bp-b_fname);
+   else
+   ewprintf(File %s is no longer readable!,
+   bp-b_fname);
+   return (FALSE);
}
 
+   /* Save our current line, so we can go back after reloading. */
+   lineno = wp-w_dotline;
+
+   /* Prevent readin from asking if we want to kill the buffer. */
+   curbp-b_flag = ~BFCHG;
+
+   if (readin(bp-b_fname))
+   return(setlineno(lineno));
return (FALSE);
 }
diff --git def.h def.h
index c24c850..2098521 100644
--- def.h
+++ def.h
@@ -37,6 +37,7 @@ typedef int   (*PF)(int, int);/* generally useful 
type */
 #define TRUE   1   /* True, yes, good, etc. */
 #define ABORT  2   /* Death, ^G, abort, etc.*/
 #define UERROR 3   /* User Error.   */
+#define REVERT 4   /* Revert the buffer */
 
 #define KCLEAR 2   /* clear echo area   */
 
@@ -415,6 +416,7 @@ int  popbuftop(struct buffer *, int);
 int getbufcwd(char *, size_t);
 int checkdirty(struct buffer *);
 int revertbuffer(int, int);
+int dorevert();
 
 /* display.c */
 intvtresize(int, int, int);
@@ -426,6 +428,7 @@ int linenotoggle(int, int);
 /* echo.c X */
 voideerase(void);
 int eyorn(const char *);
+int eynorr(const char *);
 int eyesno(const char *);
 voidewprintf(const char *fmt, ...);
 char   *ereply(const char *, char *, size_t, ...);
diff --git echo.c echo.c
index beff2f1..21ef865 100644
--- echo.c
+++ echo.c
@@ -72,6 +72,36 @@ eyorn(const char *sp)
 }
 
 /*
+ * Ask a yes, no or revert question.  Return ABORT if the user answers
+ * the question with the abort (^G) character.  Return FALSE for no,
+ * TRUE for yes and REVERT for revert. No formatting services are
+ * available.  No newline required.
+ */
+int
+eynorr(const char *sp)
+{
+   int  s;
+
+   if (inmacro)
+   return (TRUE);
+
+   ewprintf(%s? (y, n or r) , sp);
+   for (;;) {
+   s = getkey(FALSE);
+   if (s == 'y' || s == 'Y' || s == ' ')
+   return (TRUE);
+