| 
					
							
        
    
        
						
			 | 
			
			
					    
					
        
         
          
         
	
            | #define OPT_PEER_H  ((uint64_t)1 << 34) gi~ Fra : Leif Neland | 
  Dato :  30-11-09 15:01 |  
  |   
            FreeBSD:
 
 Jeg prøver at modificere asterisk, og skal i den forbindelse lave et 
 64-bit flag
 
 i app_dial.c
 
 flagene 0 til 31 er defineret
 enum {
    OPT_ANNOUNCE =   (1 << 0),
    OPT_RESETCDR =   (1 << 1),
 ....
    OPT_CALLER_MIXMONITOR = (1 << 30),
 }
 
 Flagene derefter er defineret
 #define DIAL_STILLGOING (1 << 31)
 #define DIAL_NOFORWARDHTML ((uint64_t)1 << 32) /* flags are now 64 bits, 
 so keep it up! */
 #define OPT_CANCEL_ELSEWHERE ((uint64_t)1 << 33)
 
 
 Men prøver jeg at udskrive flag lavet med uint64_t er de alle 0?!
 
 ast_verb(2,"Testing: DIAL_STILLGOING = %d\n",DIAL_STILLGOING) skriver et 
 stort negativt tal
 ast_verb(2,"Testing: DIAL_NOFORWARDHTML = %d\n",DIAL_NOFORWARDHTML) 
 skriver nul?!
 
 Hvad er der galt?
 -- 
 Jeg foretrækker min the tilberedt efter BS6008
  
            
             |   |   
            
        
 
            
         
           Leif Neland (30-11-2009) 
         
	
            | Kommentar Fra : Leif Neland | 
  Dato :  30-11-09 15:34 |  
  |   
            Leif Neland skrev:
 > FreeBSD:
 > 
 > Jeg prøver at modificere asterisk, og skal i den forbindelse lave et 
 > 64-bit flag
 > 
 > i app_dial.c
 > 
 > flagene 0 til 31 er defineret
 > enum {
 >   OPT_ANNOUNCE =    (1 << 0),
 >   OPT_RESETCDR =    (1 << 1),
 > ...
 >   OPT_CALLER_MIXMONITOR = (1 << 30),
 > }
 > 
 > Flagene derefter er defineret
 > #define DIAL_STILLGOING (1 << 31)
 > #define DIAL_NOFORWARDHTML ((uint64_t)1 << 32) /* flags are now 64 bits, 
 > so keep it up! */
 > #define OPT_CANCEL_ELSEWHERE ((uint64_t)1 << 33)
 > 
 > 
 > Men prøver jeg at udskrive flag lavet med uint64_t er de alle 0?!
 > 
 > ast_verb(2,"Testing: DIAL_STILLGOING = %d\n",DIAL_STILLGOING) skriver et 
 > stort negativt tal
 > ast_verb(2,"Testing: DIAL_NOFORWARDHTML = %d\n",DIAL_NOFORWARDHTML) 
 > skriver nul?!
 > 
 > Hvad er der galt?
 
 en 64-bit værdi passer ikke i en %d...
 %llu var bedre.
 
 Leif
 
 -- 
 Jeg foretrækker min the tilberedt efter BS6008
  
            
             |   |   
            
        
 
    
 
					
					 
			 | 
			
				
        
			 |