this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

edef patch

alice 226d2e44 319c7f73

+47 -241
+6
.cursor/rules/001.mdc
··· 1 + --- 2 + description: 3 + globs: 4 + alwaysApply: true 5 + --- 6 + Always ignore all errors related to the file "resource_ids.auto.h"
+32 -235
src/c/airport_tz_list.c
··· 3 3 4 4 #include <stdint.h> 5 5 6 - static const char* airport_code_pool[] = { 7 - "PPG", 8 - "HNL", 9 - "KOA", 10 - "LIH", 11 - "ITO", 12 - "MKK", 13 - "JHM", 14 - "LNY", 15 - "AKB", 16 - "NHV", 17 - "GMR", 18 - "ANC", 19 - "LAX", 20 - "SFO", 21 - "LAS", 22 - "SEA", 23 - "YVR", 24 - "SAN", 25 - "PDX", 26 - "OAK", 27 - "SJC", 28 - "SMF", 29 - "PHX", 30 - "DEN", 31 - "SLC", 32 - "YYC", 33 - "YEG", 34 - "ABQ", 35 - "ELP", 36 - "MEX", 37 - "ORD", 38 - "DFW", 39 - "IAH", 40 - "MSP", 41 - "MDW", 42 - "DAL", 43 - "STL", 44 - "BNA", 45 - "AUS", 46 - "IPC", 47 - "CUN", 48 - "HAV", 49 - "ATL", 50 - "JFK", 51 - "YYZ", 52 - "CLT", 53 - "MCO", 54 - "MIA", 55 - "EWR", 56 - "BOS", 57 - "DTW", 58 - "FLL", 59 - "MUN", 60 - "CGB", 61 - "MAO", 62 - "SXM", 63 - "CGR", 64 - "PVH", 65 - "BVB", 66 - "YHZ", 67 - "SCL", 68 - "YYT", 69 - "GRU", 70 - "CGH", 71 - "BSB", 72 - "GIG", 73 - "AEP", 74 - "EZE", 75 - "CNF", 76 - "VCP", 77 - "SDU", 78 - "POA", 79 - "FEN", 80 - "FSP", 81 - "GOH", 82 - "SID", 83 - "PDL", 84 - "TER", 85 - "DKR", 86 - "LHR", 87 - "LGW", 88 - "DUB", 89 - "MAN", 90 - "LIS", 91 - "STN", 92 - "LTN", 93 - "EDI", 94 - "LPA", 95 - "BHX", 96 - "CMN", 97 - "ALG", 98 - "CDG", 99 - "AMS", 100 - "FRA", 101 - "MAD", 102 - "BCN", 103 - "MUC", 104 - "FCO", 105 - "ZRH", 106 - "CPH", 107 - "PMI", 108 - "JNB", 109 - "CPT", 110 - "TLV", 111 - "BEY", 112 - "BZY", 113 - "ATH", 114 - "HEL", 115 - "OTP", 116 - "KBP", 117 - "HER", 118 - "SOF", 119 - "CAI", 120 - "IST", 121 - "SVO", 122 - "DOH", 123 - "JED", 124 - "SAW", 125 - "DME", 126 - "AYT", 127 - "RUH", 128 - "VKO", 129 - "LED", 130 - "THR", 131 - "MHD", 132 - "IKA", 133 - "SYZ", 134 - "AWZ", 135 - "KIH", 136 - "IFN", 137 - "TBZ", 138 - "BND", 139 - "PGU", 140 - "DXB", 141 - "AUH", 142 - "SHJ", 143 - "MRU", 144 - "TBS", 145 - "KUF", 146 - "RUN", 147 - "DWC", 148 - "ASF", 149 - "BUS", 150 - "KBL", 151 - "SVX", 152 - "UFA", 153 - "TJM", 154 - "SGC", 155 - "CEK", 156 - "PEE", 157 - "NUX", 158 - "REN", 159 - "NJC", 160 - "SLY", 161 - "DEL", 162 - "BOM", 163 - "BLR", 164 - "CCU", 165 - "MAA", 166 - "HYD", 167 - "COK", 168 - "PNQ", 169 - "AMD", 170 - "GOI", 171 - "KTM", 172 - "OMS", 173 - "RGN", 174 - "MDL", 175 - "CGK", 176 - "BKK", 177 - "DMK", 178 - "SGN", 179 - "HAN", 180 - "SUB", 181 - "HKT", 182 - "KNO", 183 - "DAD", 184 - "CNX", 185 - "PEK", 186 - "HKG", 187 - "PVG", 188 - "CAN", 189 - "SIN", 190 - "KUL", 191 - "CTU", 192 - "SZX", 193 - "TPE", 194 - "KMG", 195 - "EUC", 196 - "HND", 197 - "ICN", 198 - "NRT", 199 - "CJU", 200 - "KIX", 201 - "GMP", 202 - "FUK", 203 - "CTS", 204 - "OKA", 205 - "PUS", 206 - "DRW", 207 - "ASP", 208 - "AYQ", 209 - "ADL", 210 - "PLO", 211 - "MGB", 212 - "OLP", 213 - "BNE", 214 - "OOL", 215 - "CNS", 216 - "VVO", 217 - "KHV", 218 - "TSV", 219 - "SYD", 220 - "MEL", 221 - "CBR", 222 - "HBA", 223 - "LDH", 224 - "VLI", 225 - "NLK", 226 - "NAN", 227 - "PKC", 228 - "AKL", 229 - "CHC", 230 - "WLG", 231 - "ZQN", 232 - "NSN", 233 - "DUD", 234 - "NPE", 235 - "PMR", 236 - "CHT", 237 - "APW", 238 - "CXI", 239 - }; 6 + static const char airport_code_pool[] = 7 + "PPG" "HNL" "KOA" "LIH" "ITO" "MKK" "JHM" "LNY" 8 + "AKB" "NHV" "GMR" "ANC" "LAX" "SFO" "LAS" "SEA" 9 + "YVR" "SAN" "PDX" "OAK" "SJC" "SMF" "PHX" "DEN" 10 + "SLC" "YYC" "YEG" "ABQ" "ELP" "MEX" "ORD" "DFW" 11 + "IAH" "MSP" "MDW" "DAL" "STL" "BNA" "AUS" "IPC" 12 + "CUN" "HAV" "ATL" "JFK" "YYZ" "CLT" "MCO" "MIA" 13 + "EWR" "BOS" "DTW" "FLL" "MUN" "CGB" "MAO" "SXM" 14 + "CGR" "PVH" "BVB" "YHZ" "SCL" "YYT" "GRU" "CGH" 15 + "BSB" "GIG" "AEP" "EZE" "CNF" "VCP" "SDU" "POA" 16 + "FEN" "FSP" "GOH" "SID" "PDL" "TER" "DKR" "LHR" 17 + "LGW" "DUB" "MAN" "LIS" "STN" "LTN" "EDI" "LPA" 18 + "BHX" "CMN" "ALG" "CDG" "AMS" "FRA" "MAD" "BCN" 19 + "MUC" "FCO" "ZRH" "CPH" "PMI" "JNB" "CPT" "TLV" 20 + "BEY" "BZY" "ATH" "HEL" "OTP" "KBP" "HER" "SOF" 21 + "CAI" "IST" "SVO" "DOH" "JED" "SAW" "DME" "AYT" 22 + "RUH" "VKO" "LED" "THR" "MHD" "IKA" "SYZ" "AWZ" 23 + "KIH" "IFN" "TBZ" "BND" "PGU" "DXB" "AUH" "SHJ" 24 + "MRU" "TBS" "KUF" "RUN" "DWC" "ASF" "BUS" "KBL" 25 + "SVX" "UFA" "TJM" "SGC" "CEK" "PEE" "NUX" "REN" 26 + "NJC" "SLY" "DEL" "BOM" "BLR" "CCU" "MAA" "HYD" 27 + "COK" "PNQ" "AMD" "GOI" "KTM" "OMS" "RGN" "MDL" 28 + "CGK" "BKK" "DMK" "SGN" "HAN" "SUB" "HKT" "KNO" 29 + "DAD" "CNX" "PEK" "HKG" "PVG" "CAN" "SIN" "KUL" 30 + "CTU" "SZX" "TPE" "KMG" "EUC" "HND" "ICN" "NRT" 31 + "CJU" "KIX" "GMP" "FUK" "CTS" "OKA" "PUS" "DRW" 32 + "ASP" "AYQ" "ADL" "PLO" "MGB" "OLP" "BNE" "OOL" 33 + "CNS" "VVO" "KHV" "TSV" "SYD" "MEL" "CBR" "HBA" 34 + "LDH" "VLI" "NLK" "NAN" "PKC" "AKL" "CHC" "WLG" 35 + "ZQN" "NSN" "DUD" "NPE" "PMR" "CHT" "APW" "CXI" 36 + ; 240 37 241 38 static const char* airport_name_pool[] = { 242 39 "Pago Pago", ··· 547 344 }; 548 345 549 346 #define AIRPORT_TZ_LIST_COUNT (sizeof(airport_tz_list)/sizeof(airport_tz_list[0])) 550 - #define AIRPORT_CODE_POOL_COUNT (sizeof(airport_code_pool)/sizeof(airport_code_pool[0])) 347 + #define AIRPORT_CODE_POOL_COUNT (sizeof(airport_code_pool)/3) 551 348 #define AIRPORT_NAME_POOL_COUNT (sizeof(airport_name_pool)/sizeof(airport_name_pool[0]))
+9 -6
src/c/clock_closest_airport_noon.h
··· 69 69 #define DAY_SECONDS (24 * 3600L) 70 70 #define NOON_SECONDS (12 * 3600L) 71 71 72 - static char s_airport_noon_buffer[40]; // code + MM:SS 72 + // static char s_airport_noon_buffer[40]; // code + MM:SS 73 73 static time_t s_last_update_time = -1; 74 74 static time_t s_last_re_eval_time = -1; 75 - static const char *s_selected_code = "---"; // IATA placeholder 75 + static char s_selected_code[4] = "---"; // IATA placeholder 76 76 static const char *s_selected_name = "---"; // Airport name placeholder 77 77 static float s_selected_offset_hours = 0.0f; 78 78 ··· 116 116 117 117 // 2. Pick a random candidate, then a random airport code from that bucket 118 118 if (best_count == 0) { 119 - s_selected_code = "---"; 119 + memcpy((void *)s_selected_code, "---", 3); 120 + s_selected_code[3] = '\0'; // Ensure null termination 120 121 s_selected_name = "---"; 121 122 s_selected_offset_hours = 0.0f; 122 123 } else { ··· 126 127 s_selected_offset_hours = is_dst ? tz->dst_offset_hours : tz->std_offset_hours; 127 128 int cnt = tz->name_count; 128 129 int ni = (cnt == 1) ? 0 : (rand() % cnt); 129 - s_selected_code = CODE_POOL[tz->name_offset + ni]; 130 + memcpy((void *)s_selected_code, CODE_POOL + 3 * (tz->name_offset + ni), 3); 131 + s_selected_code[3] = '\0'; // Ensure null termination 130 132 s_selected_name = NAME_POOL[tz->name_offset + ni]; 131 133 } 132 134 s_last_re_eval_time = current_utc_t; ··· 136 138 static inline TextLayer* clock_closest_airport_noon_code_init(GRect bounds, 137 139 Layer *window_layer) { 138 140 TextLayer* layer = text_layer_util_create(bounds, window_layer, "---", FONT_KEY_GOTHIC_28_BOLD); 139 - s_selected_code = "---"; 141 + memcpy((void *)s_selected_code, "---", 3); 142 + s_selected_code[3] = '\0'; // Ensure null termination 140 143 s_selected_name = "---"; 141 144 s_last_update_time = -1; 142 145 s_last_re_eval_time = -1; ··· 182 185 } 183 186 184 187 // Update text layers --------------------------------------------------- 185 - text_layer_set_text(code_layer, s_selected_code ? s_selected_code : "ERR"); 188 + text_layer_set_text(code_layer, s_selected_code); 186 189 187 190 long offset_seconds = (long)(s_selected_offset_hours * 3600.0f); 188 191 time_t local_epoch = current_utc_t + offset_seconds;