mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Fixed a crash on systems with disks that have a block size larger than 1MB
This commit is contained in:
		| @@ -317,3 +317,7 @@ Dimitrios Dimitrakos <mail@dimitrios.de> | ||||
|  | ||||
| Marcus Kuba <marcus@kuba4u.de> | ||||
|  for reporting a bug in the unit of the "SVDRP timeout" setup parameter | ||||
|  | ||||
| Ulrich Petri <ulope@gmx.de> | ||||
|  for his help in debugging a crash on systems with disks that have a block size | ||||
|  larger than 1MB | ||||
|   | ||||
							
								
								
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -1228,3 +1228,5 @@ Video Disk Recorder Revision History | ||||
| - Added Greek language texts (thanks to Dimitrios Dimitrakos). | ||||
| - Fixed the unit of the "SVDRP timeout" setup parameter (thanks to Marcus Kuba | ||||
|   for reporting this one). | ||||
| - Fixed a crash on systems with disks that have a block size larger than 1MB | ||||
|   (thanks to Ulrich Petri for helping to debug this one). | ||||
|   | ||||
							
								
								
									
										8
									
								
								tools.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								tools.c
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | ||||
|  * See the main source file 'vdr.c' for copyright information and | ||||
|  * how to reach the author. | ||||
|  * | ||||
|  * $Id: tools.c 1.62 2002/03/31 20:51:06 kls Exp $ | ||||
|  * $Id: tools.c 1.63 2002/05/01 16:20:30 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "tools.h" | ||||
| @@ -251,10 +251,10 @@ int FreeDiskSpaceMB(const char *Directory, int *UsedMB) | ||||
|   int Free = 0; | ||||
|   struct statfs statFs; | ||||
|   if (statfs(Directory, &statFs) == 0) { | ||||
|      int blocksPerMeg = 1024 * 1024 / statFs.f_bsize; | ||||
|      double blocksPerMeg = 1024.0 * 1024.0 / statFs.f_bsize; | ||||
|      if (UsedMB) | ||||
|         *UsedMB = (statFs.f_blocks - statFs.f_bfree) / blocksPerMeg; | ||||
|      Free = statFs.f_bavail / blocksPerMeg; | ||||
|         *UsedMB = int((statFs.f_blocks - statFs.f_bfree) / blocksPerMeg); | ||||
|      Free = int(statFs.f_bavail / blocksPerMeg); | ||||
|      } | ||||
|   else | ||||
|      LOG_ERROR_STR(Directory); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user